From: Peter Michael Green Date: Thu, 24 Apr 2025 19:36:28 +0000 (+0000) Subject: Import rust-ring_0.17.14-2+rpi1.debian.tar.xz X-Git-Tag: archive/raspbian/0.17.14-5+rpi1~10^2 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/%22mailto:kde%40ewsoftware.de//%22style.css/%22/%22http:/www.example.com/%22mailto:kde%40ewsoftware.de/%22style.css/%22?a=commitdiff_plain;h=5d02a3bff2017258e4306e4a09f1703978a5e698;p=rust-ring.git Import rust-ring_0.17.14-2+rpi1.debian.tar.xz [dgit import tarball rust-ring 0.17.14-2+rpi1 rust-ring_0.17.14-2+rpi1.debian.tar.xz] --- 5d02a3bff2017258e4306e4a09f1703978a5e698 diff --git a/cargo-checksum.json b/cargo-checksum.json new file mode 100644 index 0000000..b5623be --- /dev/null +++ b/cargo-checksum.json @@ -0,0 +1 @@ +{"package":"Could not get crate checksum","files":{}} diff --git a/changelog b/changelog new file mode 100644 index 0000000..324b130 --- /dev/null +++ b/changelog @@ -0,0 +1,120 @@ +rust-ring (0.17.14-2+rpi1) trixie-staging; urgency=medium + + * Disable arm-specific codepaths to avoid armv7 contamination. + + -- Peter Michael Green Thu, 24 Apr 2025 19:36:28 +0000 + +rust-ring (0.17.14-2) unstable; urgency=medium + + * Team upload. + * Package ring 0.17.14 from crates.io using debcargo 2.7.8 + * Fix library name in built-using (Closes: #1103300) + + -- Peter Michael Green Thu, 17 Apr 2025 02:09:18 +0000 + +rust-ring (0.17.14-1) unstable; urgency=medium + + * Team upload. + * Package ring 0.17.14 from crates.io using debcargo 2.7.8 + + New upstream fixes RUSTSEC-2025-0009 + * Drop use-generic-implementation-on-non-sse2-x86.patch, Debian has + decided to use SSE2 for rust on i386 and the patch is a pain to maintain. + * Update remaining patches for new upstream. + + -- Peter Michael Green Tue, 15 Apr 2025 17:32:52 +0000 + +rust-ring (0.17.8-2) unstable; urgency=medium + + * Team upload. + * Package ring 0.17.8 from crates.io using debcargo 2.6.1 + * Add patch to avoid using x86-specific implementation on non-sse2 x86, + since upstream informs us that the x86 assembly implementations require + sse2. + + -- Peter Michael Green Sat, 14 Sep 2024 18:06:25 +0000 + +rust-ring (0.17.8-1) unstable; urgency=medium + + * Team upload. + * Package ring 0.17.8 from crates.io using debcargo 2.6.1 (Closes: #1067602) + + -- Peter Michael Green Tue, 13 Aug 2024 17:09:38 +0000 + +rust-ring (0.17.5-1) unstable; urgency=medium + + * Team upload. + * Package ring 0.17.5 from crates.io using debcargo 2.6.0 + * Update patches for new upsteam. + * Upload to unstable. + + -- Peter Michael Green Tue, 07 Nov 2023 18:17:58 +0000 + +rust-ring (0.17.3-1) experimental; urgency=medium + + * Team upload. + * Package ring 0.17.3 from crates.io using debcargo 2.6.0 + * Add patch to disable slow tests. + * Drop update-spin-to-0.9.patch, no longer needed. + * Update patches for new upstream. + * Remove windows-specific dependency that is not in Debian. + * Remove dependency on js feature of getrandom, whic is not + provided by Debian's rust-getrandom package. + + -- Peter Michael Green Sat, 14 Oct 2023 17:35:11 +0000 + +rust-ring (0.16.20-2) unstable; urgency=medium + + * Team upload. + * Package ring 0.16.20 from crates.io using debcargo 2.5.0 + * Upgrade spin dependency to 0.9 + + -- Alexander Kjäll Mon, 24 Oct 2022 20:11:21 -0400 + +rust-ring (0.16.20-1) unstable; urgency=medium + + * Team upload. + * Package ring 0.16.20 from crates.io using debcargo 2.5.0 (Closes: #1010212) + * Drop relax-deps.patch, no longer needed + * Drop use-array-iter.patch, included in new upstream + * Remove dev-dependency on wasm-bindgen-test, it's only used when testing + with the wasm-bindgen target which we don't do in Debian. + * Disable a test which depends on test data that is not in Debian. + * Fix running tests with no-default-features. + * Use collapse_features = true + + -- Peter Michael Green Thu, 28 Apr 2022 21:08:04 +0000 + +rust-ring (0.16.9-4) unstable; urgency=medium + + * Package ring 0.16.9 from crates.io using debcargo 2.4.2 + * use-array-iter.patch: Fix usage of array::into_iter + Thanks to Logan Rosen (Closes: #961387) + + -- Sylvestre Ledru Sat, 23 May 2020 23:38:56 +0200 + +rust-ring (0.16.9-3) unstable; urgency=medium + + * Team upload. + * Package ring 0.16.9 from crates.io using debcargo 2.4.2 + + -- Sylvestre Ledru Mon, 20 Apr 2020 14:16:05 +0200 + +rust-ring (0.16.9-2) unstable; urgency=medium + + * Team upload. + * Package ring 0.16.9 from crates.io using debcargo 2.2.10 + * librust-ring+lazy-static-dev is NEW. + + -- Sylvestre Ledru Tue, 29 Oct 2019 09:07:09 +0100 + +rust-ring (0.16.9-1) unstable; urgency=medium + + * Package ring 0.16.9 from crates.io using debcargo 2.4.0 (Closes: #935673) + + -- kpcyrd Tue, 22 Oct 2019 18:02:25 +0200 + +rust-ring (0.14.6-1) unstable; urgency=medium + + * Package ring 0.14.6 from crates.io using debcargo 2.2.10 + + -- kpcyrd Thu, 20 Jun 2019 17:05:16 -0700 diff --git a/control b/control new file mode 100644 index 0000000..f4bcfdc --- /dev/null +++ b/control @@ -0,0 +1,77 @@ +Source: rust-ring +Section: rust +Priority: optional +Build-Depends: debhelper-compat (= 13), + dh-sequence-cargo +Build-Depends-Arch: cargo:native , + rustc:native (>= 1.66.0) , + libstd-rust-dev , + librust-cc-1-dev (>= 1.2.8-~~) , + librust-cfg-if-1-dev , + librust-getrandom-0.2+default-dev (>= 0.2.10-~~) , + librust-libc-0.2-dev (>= 0.2.148-~~) , + librust-libc-0.2-dev (>= 0.2.155-~~) , + librust-untrusted-0.9+default-dev +Maintainer: Debian Rust Maintainers +Uploaders: + kpcyrd +Standards-Version: 4.7.0 +Vcs-Git: https://salsa.debian.org/rust-team/debcargo-conf.git [src/ring] +Vcs-Browser: https://salsa.debian.org/rust-team/debcargo-conf/tree/master/src/ring +Homepage: https://github.com/briansmith/ring +X-Cargo-Crate: ring +Rules-Requires-Root: no + +Package: librust-ring-dev +Architecture: any +Multi-Arch: same +Depends: + ${misc:Depends}, + librust-cc-1-dev (>= 1.2.8-~~), + librust-cfg-if-1-dev, + librust-getrandom-0.2+default-dev (>= 0.2.10-~~), + librust-libc-0.2-dev (>= 0.2.148-~~), + librust-libc-0.2-dev (>= 0.2.155-~~), + librust-untrusted-0.9+default-dev +Provides: + librust-ring+alloc-dev (= ${binary:Version}), + librust-ring+default-dev (= ${binary:Version}), + librust-ring+dev-urandom-fallback-dev (= ${binary:Version}), + librust-ring+less-safe-getrandom-custom-or-rdrand-dev (= ${binary:Version}), + librust-ring+less-safe-getrandom-espidf-dev (= ${binary:Version}), + librust-ring+std-dev (= ${binary:Version}), + librust-ring+test-logging-dev (= ${binary:Version}), + librust-ring+unstable-testing-arm-no-hw-dev (= ${binary:Version}), + librust-ring+unstable-testing-arm-no-neon-dev (= ${binary:Version}), + librust-ring-0-dev (= ${binary:Version}), + librust-ring-0+alloc-dev (= ${binary:Version}), + librust-ring-0+default-dev (= ${binary:Version}), + librust-ring-0+dev-urandom-fallback-dev (= ${binary:Version}), + librust-ring-0+less-safe-getrandom-custom-or-rdrand-dev (= ${binary:Version}), + librust-ring-0+less-safe-getrandom-espidf-dev (= ${binary:Version}), + librust-ring-0+std-dev (= ${binary:Version}), + librust-ring-0+test-logging-dev (= ${binary:Version}), + librust-ring-0+unstable-testing-arm-no-hw-dev (= ${binary:Version}), + librust-ring-0+unstable-testing-arm-no-neon-dev (= ${binary:Version}), + librust-ring-0.17-dev (= ${binary:Version}), + librust-ring-0.17+alloc-dev (= ${binary:Version}), + librust-ring-0.17+default-dev (= ${binary:Version}), + librust-ring-0.17+dev-urandom-fallback-dev (= ${binary:Version}), + librust-ring-0.17+less-safe-getrandom-custom-or-rdrand-dev (= ${binary:Version}), + librust-ring-0.17+less-safe-getrandom-espidf-dev (= ${binary:Version}), + librust-ring-0.17+std-dev (= ${binary:Version}), + librust-ring-0.17+test-logging-dev (= ${binary:Version}), + librust-ring-0.17+unstable-testing-arm-no-hw-dev (= ${binary:Version}), + librust-ring-0.17+unstable-testing-arm-no-neon-dev (= ${binary:Version}), + librust-ring-0.17.14-dev (= ${binary:Version}), + librust-ring-0.17.14+alloc-dev (= ${binary:Version}), + librust-ring-0.17.14+default-dev (= ${binary:Version}), + librust-ring-0.17.14+dev-urandom-fallback-dev (= ${binary:Version}), + librust-ring-0.17.14+less-safe-getrandom-custom-or-rdrand-dev (= ${binary:Version}), + librust-ring-0.17.14+less-safe-getrandom-espidf-dev (= ${binary:Version}), + librust-ring-0.17.14+std-dev (= ${binary:Version}), + librust-ring-0.17.14+test-logging-dev (= ${binary:Version}), + librust-ring-0.17.14+unstable-testing-arm-no-hw-dev (= ${binary:Version}), + librust-ring-0.17.14+unstable-testing-arm-no-neon-dev (= ${binary:Version}) +Description: Experiment - Rust source code + Source code for Debianized Rust crate "ring" diff --git a/copyright b/copyright new file mode 100644 index 0000000..cabf6b8 --- /dev/null +++ b/copyright @@ -0,0 +1,233 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: ring +Upstream-Contact: Brian Smith +Source: https://github.com/briansmith/ring + +Files: * +Copyright: + 2015-2023 Brian Smith + 1998-2020 The OpenSSL Project + 1995-1998 Eric Young + 2014-2023 Google Inc. + 2017 Shay Gueron + 2002 Sun Microsystems, Inc. + 2014-2015 Intel Corporation + 2015-2020 CloudFlare, Inc. + 2018 Trent Clarke + 2016 Simon Sapin + 2016 David Judd + 2016 Dirkjan Ochtman + 2015-2020 the fiat-crypto authors +License: OpenSSL License + +Files: debian/* +Copyright: + 2019-2022 Debian Rust Maintainers + 2019 kpcyrd +License: OpenSSL License + +License: OpenSSL License + Note that it is easy for this file to get out of sync with the licenses in the + source code files. It's recommended to compare the licenses in the source code + with what's mentioned here. + . + *ring* is derived from BoringSSL, so the licensing situation in *ring* is + similar to BoringSSL. + . + *ring* uses an ISC-style license like BoringSSL for code in new files, + including in particular all the Rust code: + . + Copyright 2015-2016 Brian Smith. + . + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + . + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHORS DISCLAIM ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY + SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + . + BoringSSL is a fork of OpenSSL. As such, large parts of it fall under OpenSSL + licensing. Files that are completely new have a Google copyright and an ISC + license. This license is reproduced at the bottom of this file. + . + Contributors to BoringSSL are required to follow the CLA rules for Chromium: + https://cla.developers.google.com/clas + . + Files in third_party/ have their own licenses, as described therein. The MIT + license, for third_party/fiat, which, unlike other third_party directories, is + compiled into non-test libraries, is included below. + . + The OpenSSL toolkit stays under a dual license, i.e. both the conditions of the + OpenSSL License and the original SSLeay license apply to the toolkit. See below + for the actual license texts. Actually both licenses are BSD-style Open Source + licenses. In case of any license issues related to OpenSSL please contact + openssl-core@openssl.org. + . + The following are Google-internal bug numbers where explicit permission from + some authors is recorded for use of their work: + 27287199 + 27287880 + 27287883 + . + OpenSSL License + --------------- + . + /* ==================================================================== + * Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ + . + Original SSLeay License + ----------------------- + . + /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + . + . + ISC license used for completely new code in BoringSSL: + . + /* Copyright (c) 2015, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + . + . + The code in third_party/fiat carries the MIT license: + . + Copyright (c) 2015-2016 the fiat-crypto authors (see + https://github.com/mit-plv/fiat-crypto/blob/master/AUTHORS). + . + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. diff --git a/copyright.debcargo.hint b/copyright.debcargo.hint new file mode 100644 index 0000000..ae6e070 --- /dev/null +++ b/copyright.debcargo.hint @@ -0,0 +1,1766 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: ring +Upstream-Contact: FIXME (overlay) UNKNOWN-AUTHORS +Source: https://github.com/briansmith/ring + +Files: * +Copyright: FIXME (overlay) UNKNOWN-AUTHORS FIXME (overlay) UNKNOWN-YEARS +License: Apache-2.0 and ISC +Comment: + FIXME (overlay): Since upstream copyright years are not available in + Cargo.toml, they were extracted from the upstream Git repository. This may not + be correct information so you should review and fix this before uploading to + the archive. + +Files: LICENSE-BoringSSL +Copyright: + 2009 The Go Authors. All rights reserved. + 2015 The Chromium Authors. All rights reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: LICENSE-other-bits +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: build.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/chacha/asm/chacha-armv4.pl +Copyright: 2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/chacha/asm/chacha-armv8.pl +Copyright: 2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/chacha/asm/chacha-x86.pl +Copyright: 2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/chacha/asm/chacha-x86_64.pl +Copyright: 2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/cipher/asm/chacha20_poly1305_armv8.pl +Copyright: 2020, CloudFlare Ltd. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/cipher/asm/chacha20_poly1305_x86_64.pl +Copyright: 2015, CloudFlare Ltd. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/constant_time_test.c +Copyright: 2014-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/cpu_intel.c +Copyright: 1995-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/crypto.c +Copyright: 2014 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/curve25519/asm/x25519-asm-arm.S +Copyright: 2015 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/curve25519/curve25519.c +Copyright: 2020 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/curve25519/curve25519_64_adx.c +Copyright: 2023 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/curve25519/curve25519_tables.h +Copyright: 2020 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/curve25519/internal.h +Copyright: 2020 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/aes_nohw.c +Copyright: 2019, Google Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/aes-gcm-avx2-x86_64.pl +Copyright: 2024 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/aesni-gcm-x86_64.pl +Copyright: 2013-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/aesni-x86.pl +Copyright: 2009-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/aesni-x86_64.pl +Copyright: 2009-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/aesv8-armx.pl +Copyright: 2014-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/aesv8-gcm-armv8.pl +Copyright: 2022, ARM Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/bsaes-armv7.pl +Copyright: 2012-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/ghash-armv4.pl +Copyright: 2010-2018 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/ghash-neon-armv8.pl +Copyright: 2010-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/ghash-x86.pl +Copyright: 2010-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/ghash-x86_64.pl +Copyright: 2010-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/ghashv8-armx.pl +Copyright: 2014-2020 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/vpaes-armv7.pl +Copyright: 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/vpaes-armv8.pl +Copyright: 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/vpaes-x86.pl +Copyright: 2011-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/aes/asm/vpaes-x86_64.pl +Copyright: 2011-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/bn/asm/armv4-mont.pl +Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/bn/asm/armv8-mont.pl +Copyright: 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/bn/asm/x86-mont.pl +Copyright: 2005-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/bn/asm/x86_64-mont.pl +Copyright: 2005-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/bn/asm/x86_64-mont5.pl +Copyright: 2011-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/bn/internal.h +Copyright: + 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + 2002, Oracle and/or its affiliates. All rights reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/bn/montgomery.c +Copyright: 1995-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/bn/montgomery_inv.c +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/asm/p256-armv8-asm.pl +Copyright: 2015-2020 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/asm/p256-x86_64-asm.pl +Copyright: + 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + 2014, Intel Corporation. All Rights Reserved. + 2015 CloudFlare, Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/ecp_nistz.c +Copyright: 2014, Intel Corporation. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/ecp_nistz.h +Copyright: 2015, Google Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/ecp_nistz384.h +Copyright: 2014, Intel Corporation. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/ecp_nistz384.inl +Copyright: 2014, Intel Corporation. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/gfp_p256.c +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/gfp_p384.c +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/p256-nistz-table.h +Copyright: + 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + 2015, Intel Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/p256-nistz.c +Copyright: + 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + 2014, Intel Corporation. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/p256-nistz.h +Copyright: + 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + 2014, Intel Corporation. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/p256.c +Copyright: 2020 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/p256_shared.h +Copyright: + 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + 2014, Intel Corporation. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/p256_table.h +Copyright: 2020 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/ec/util.h +Copyright: 2015 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/sha/asm/sha256-armv4.pl +Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/sha/asm/sha512-armv4.pl +Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/sha/asm/sha512-armv8.pl +Copyright: 2014-2020 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/fipsmodule/sha/asm/sha512-x86_64.pl +Copyright: 2005-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/internal.h +Copyright: 1995-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/limbs/limbs.c +Copyright: 2016-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/limbs/limbs.h +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/limbs/limbs.inl +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/mem.c +Copyright: 1995-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/perlasm/arm-xlate.pl +Copyright: 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/perlasm/x86_64-xlate.pl +Copyright: 2005-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/perlasm/x86asm.pl +Copyright: 1995-2018 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/perlasm/x86gas.pl +Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/perlasm/x86nasm.pl +Copyright: 1999-2018 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/poly1305/poly1305.c +Copyright: 2014, Google Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: crypto/poly1305/poly1305_arm.c +Copyright: 2014, Google Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: include/ring-core/aes.h +Copyright: 2002-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: include/ring-core/asm_base.h +Copyright: 2023 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: include/ring-core/base.h +Copyright: 2001-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: include/ring-core/check.h +Copyright: 2020 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: include/ring-core/mem.h +Copyright: 1995-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: include/ring-core/target.h +Copyright: 2023 The BoringSSL Authors +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: include/ring-core/type_check.h +Copyright: 1999-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: pregenerated/bsaes-armv7-linux32.S +Copyright: 2012-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: pregenerated/sha256-armv4-linux32.S +Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: pregenerated/sha256-armv8-ios64.S +Copyright: 2014-2020 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: pregenerated/sha256-armv8-linux64.S +Copyright: 2014-2020 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: pregenerated/sha256-armv8-win64.S +Copyright: 2014-2020 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: pregenerated/sha512-armv4-linux32.S +Copyright: 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: pregenerated/sha512-armv8-ios64.S +Copyright: 2014-2020 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: pregenerated/sha512-armv8-linux64.S +Copyright: 2014-2020 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: pregenerated/sha512-armv8-win64.S +Copyright: 2014-2020 The OpenSSL Project Authors. All Rights Reserved. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead.rs +Copyright: 2015-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/aes.rs +Copyright: 2018-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/aes/bs.rs +Copyright: 2018-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/aes/fallback.rs +Copyright: 2018-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/aes/ffi.rs +Copyright: 2018-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/aes/hw.rs +Copyright: 2018-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/aes/vp.rs +Copyright: 2018-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/aes_gcm.rs +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/aes_gcm/aarch64.rs +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/aes_gcm/aeshwclmulmovbe.rs +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/aes_gcm/vaesclmulavx2.rs +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/algorithm.rs +Copyright: 2015-2021 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/chacha.rs +Copyright: + 2016 Brian Smith. + 2016, Google Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/chacha/fallback.rs +Copyright: + 2021 Brian Smith. + 2014, Google Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/chacha/ffi.rs +Copyright: 2016-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/chacha20_poly1305/integrated.rs +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/chacha20_poly1305/mod.rs +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/chacha20_poly1305_openssh.rs +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/gcm.rs +Copyright: 2018-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/gcm/clmul.rs +Copyright: 2018-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/gcm/clmulavxmovbe.rs +Copyright: 2018-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/gcm/fallback.rs +Copyright: + 2019, Google Inc. + 2020-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/gcm/ffi.rs +Copyright: 2018 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/gcm/neon.rs +Copyright: 2018-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/gcm/vclmulavx2.rs +Copyright: 2018-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/less_safe_key.rs +Copyright: 2015-2021 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/nonce.rs +Copyright: 2018 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/opening_key.rs +Copyright: 2015-2021 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/overlapping/array.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/overlapping/base.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/overlapping/mod.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/overlapping/partial_block.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/poly1305.rs +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/poly1305/ffi_arm_neon.rs +Copyright: + 2015-2025 Brian Smith. + 2014, 2015, Google Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/poly1305/ffi_fallback.rs +Copyright: + 2015-2025 Brian Smith. + 2014, 2015, Google Inc. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/quic.rs +Copyright: 2018 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/sealing_key.rs +Copyright: 2015-2021 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/shift.rs +Copyright: 2018 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/aead/unbound_key.rs +Copyright: 2015-2021 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/agreement.rs +Copyright: 2015-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic.rs +Copyright: 2017-2023 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/bigint.rs +Copyright: 2015-2023 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/bigint/boxed_limbs.rs +Copyright: 2015-2023 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/bigint/modulus.rs +Copyright: 2015-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/bigint/modulusvalue.rs +Copyright: 2015-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/bigint/private_exponent.rs +Copyright: 2015-2023 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/ffi.rs +Copyright: 2024-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/inout.rs +Copyright: 2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/limbs/aarch64/mod.rs +Copyright: 2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/limbs/aarch64/mont.rs +Copyright: 2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/limbs/mod.rs +Copyright: 2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/limbs/x86_64/mod.rs +Copyright: 2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/limbs/x86_64/mont.rs +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/limbs512/mod.rs +Copyright: 2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/limbs512/storage.rs +Copyright: 2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/montgomery.rs +Copyright: 2017-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/arithmetic/n0.rs +Copyright: 2015-2022 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/bb/boolmask.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/bb/leaky.rs +Copyright: 2015-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/bb/mod.rs +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/bb/word.rs +Copyright: 2015-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/bits.rs +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/bssl.rs +Copyright: 2015 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/c.rs +Copyright: 2016-2019 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/cpu.rs +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/cpu/arm.rs +Copyright: 2016-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/cpu/arm/darwin.rs +Copyright: 2016-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/cpu/arm/fuchsia.rs +Copyright: 2016-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/cpu/arm/linux.rs +Copyright: 2016-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/cpu/arm/windows.rs +Copyright: 2016-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/cpu/intel.rs +Copyright: 2016-2021 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/debug.rs +Copyright: 2018 Trent Clarke. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/deprecated_constant_time.rs +Copyright: 2015-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/deprecated_test.rs +Copyright: 2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/digest.rs +Copyright: 2015-2019 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/digest/dynstate.rs +Copyright: 2015-2019 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/digest/sha1.rs +Copyright: + 2015-2025 Brian Smith. + 2016 Simon Sapin. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/digest/sha2/fallback.rs +Copyright: 2019-2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/digest/sha2/ffi.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/digest/sha2/mod.rs +Copyright: 2019-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/digest/sha2/sha2_32.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/digest/sha2/sha2_64.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec.rs +Copyright: 2015-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/curve25519.rs +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/curve25519/ed25519.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/curve25519/ed25519/signing.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/curve25519/ed25519/verification.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/curve25519/ops.rs +Copyright: 2015-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/curve25519/scalar.rs +Copyright: 2015-2019 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/curve25519/x25519.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b.rs +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/curve.rs +Copyright: 2015-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/ecdh.rs +Copyright: 2015-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/ecdsa/digest_scalar.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/ecdsa/signing.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/ecdsa/verification.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/ops.rs +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/ops/elem.rs +Copyright: 2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/ops/p256.rs +Copyright: 2016-2023 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/ops/p384.rs +Copyright: 2016-2023 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/private_key.rs +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/ec/suite_b/public_key.rs +Copyright: 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/error/input_too_long.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/error/into_unspecified.rs +Copyright: 2016-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/error/key_rejected.rs +Copyright: 2016-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/error/mod.rs +Copyright: 2016-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/error/unspecified.rs +Copyright: 2016-2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/hkdf.rs +Copyright: 2015 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/hmac.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/io.rs +Copyright: 2018 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/io/der.rs +Copyright: 2015 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/io/der_writer.rs +Copyright: 2018 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/io/positive.rs +Copyright: 2018 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/io/writer.rs +Copyright: 2018 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/lib.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/limb.rs +Copyright: + 2016 David Judd. + 2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/pbkdf2.rs +Copyright: 2015 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/pkcs8.rs +Copyright: 2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/polyfill.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/polyfill/array_split_map.rs +Copyright: 2023 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/polyfill/cold_error.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/polyfill/cstr.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/polyfill/notsend.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/polyfill/ptr.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/polyfill/slice/as_chunks.rs +Copyright: 2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/polyfill/slice/as_chunks_mut.rs +Copyright: 2025 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/polyfill/sliceutil.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/polyfill/unwrap_const.rs +Copyright: 2022 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/rand.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/rsa.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/rsa/keypair.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/rsa/padding.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/rsa/padding/pkcs1.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/rsa/padding/pss.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/rsa/public_key.rs +Copyright: 2015-2021 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/rsa/public_key_components.rs +Copyright: 2015-2021 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/rsa/verification.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/signature.rs +Copyright: 2015-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/tests/bits_tests.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/tests/mod.rs +Copyright: 2024 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: src/testutil.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/aead_tests.rs +Copyright: 2015-2021 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/agreement_tests.rs +Copyright: 2015-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/constant_time_tests.rs +Copyright: 2020 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/digest_tests.rs +Copyright: 2015-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/ecdsa_tests.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/ed25519_tests.rs +Copyright: 2015-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/hkdf_tests.rs +Copyright: 2015 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/hmac_tests.rs +Copyright: 2015-2016 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/pbkdf2_tests.rs +Copyright: 2015-2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/quic_tests.rs +Copyright: 2018 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/rand_tests.rs +Copyright: 2015-2019 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: tests/rsa_tests.rs +Copyright: 2017 Brian Smith. +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: third_party/fiat/LICENSE +Copyright: 2015-2020 the fiat-crypto authors (see the AUTHORS file) +License: UNKNOWN-LICENSE; FIXME (overlay) +Comment: + FIXME (overlay): These notices are extracted from files. Please review them + before uploading to the archive. + +Files: debian/* +Copyright: + 2019-2025 Debian Rust Maintainers + 2019-2025 kpcyrd +License: Apache-2.0 and ISC + +License: Apache-2.0 + Debian systems provide the Apache 2.0 license in + /usr/share/common-licenses/Apache-2.0 + +License: ISC + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + . + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/debcargo.toml b/debcargo.toml new file mode 100644 index 0000000..397a4fc --- /dev/null +++ b/debcargo.toml @@ -0,0 +1,4 @@ +overlay = "." +uploaders = ["kpcyrd "] +whitelist = ["crypto/**/*.c", "third_party/**/*.c"] +collapse_features = true diff --git a/patches/built-using.patch b/patches/built-using.patch new file mode 100644 index 0000000..e2abe6c --- /dev/null +++ b/patches/built-using.patch @@ -0,0 +1,8 @@ +--- a/build.rs ++++ b/build.rs +@@ -250,2 +250,5 @@ + fn main() { ++ println!("dh-cargo:deb-built-using=ring_core_{}_{}_{}_=0={}", std::env::var("CARGO_PKG_VERSION_MAJOR").unwrap(), std::env::var("CARGO_PKG_VERSION_MINOR").unwrap(), std::env::var("CARGO_PKG_VERSION_PATCH").unwrap(), std::env::var("CARGO_MANIFEST_DIR").unwrap()); ++ println!("dh-cargo:deb-built-using=ring_core_{}_{}_{}__test=0={}", std::env::var("CARGO_PKG_VERSION_MAJOR").unwrap(), std::env::var("CARGO_PKG_VERSION_MINOR").unwrap(), std::env::var("CARGO_PKG_VERSION_PATCH").unwrap(), std::env::var("CARGO_MANIFEST_DIR").unwrap()); ++ + // Avoid assuming the working directory is the same is the $CARGO_MANIFEST_DIR so that toolchains diff --git a/patches/disable-arm-specific-codepaths.patch b/patches/disable-arm-specific-codepaths.patch new file mode 100644 index 0000000..4d95980 --- /dev/null +++ b/patches/disable-arm-specific-codepaths.patch @@ -0,0 +1,999 @@ +Description: Disable arm-specific codepaths + they cause the resulting code to come out with armv7 markers, which is + a problem given the way rust applications are statically linked. + + Changes in src and tests were made with the commands + + for file in `find src -name '*.rs'` ; do sed -i 's/target_arch = "arm"/target_arch = "armxxx"/g' $file ; done + for file in `find tests -name '*.rs'` ; do sed -i 's/target_arch = "arm"/target_arch = "armxxx"/g' $file ; done + + Other changes were made manually. + +Author: Peter Michael Green + +--- rust-ring-0.17.14.orig/Cargo.lock ++++ rust-ring-0.17.14/Cargo.lock +@@ -3,12 +3,6 @@ + version = 3 + + [[package]] +-name = "bumpalo" +-version = "3.7.0" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9c59e7af012c713f529e7a3ee57ce9b31ddd858d4b512923602f74608b009631" +- +-[[package]] + name = "cc" + version = "1.2.13" + source = "registry+https://github.com/rust-lang/crates.io-index" +@@ -30,20 +24,8 @@ source = "registry+https://github.com/ru + checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" + dependencies = [ + "cfg-if", +- "js-sys", + "libc", + "wasi", +- "wasm-bindgen", +-] +- +-[[package]] +-name = "js-sys" +-version = "0.3.74" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a865e038f7f6ed956f788f0d7d60c541fff74c7bd74272c5d4cf15c63743e705" +-dependencies = [ +- "once_cell", +- "wasm-bindgen", + ] + + [[package]] +@@ -53,46 +35,6 @@ source = "registry+https://github.com/ru + checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" + + [[package]] +-name = "log" +-version = "0.4.25" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f" +- +-[[package]] +-name = "minicov" +-version = "0.3.7" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f27fe9f1cc3c22e1687f9446c2083c4c5fc7f0bcf1c7a86bdbded14985895b4b" +-dependencies = [ +- "cc", +- "walkdir", +-] +- +-[[package]] +-name = "once_cell" +-version = "1.20.3" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e" +- +-[[package]] +-name = "proc-macro2" +-version = "1.0.93" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" +-dependencies = [ +- "unicode-ident", +-] +- +-[[package]] +-name = "quote" +-version = "1.0.38" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" +-dependencies = [ +- "proc-macro2", +-] +- +-[[package]] + name = "ring" + version = "0.17.14" + dependencies = [ +@@ -101,261 +43,22 @@ dependencies = [ + "getrandom", + "libc", + "untrusted", +- "wasm-bindgen-test", +- "windows-sys 0.52.0", +-] +- +-[[package]] +-name = "same-file" +-version = "1.0.6" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +-dependencies = [ +- "winapi-util", + ] + + [[package]] +-name = "scoped-tls" +-version = "1.0.1" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" +- +-[[package]] + name = "shlex" + version = "1.3.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + + [[package]] +-name = "syn" +-version = "2.0.98" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" +-dependencies = [ +- "proc-macro2", +- "quote", +- "unicode-ident", +-] +- +-[[package]] +-name = "unicode-ident" +-version = "1.0.16" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034" +- +-[[package]] + name = "untrusted" + version = "0.9.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + + [[package]] +-name = "walkdir" +-version = "2.5.0" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +-dependencies = [ +- "same-file", +- "winapi-util", +-] +- +-[[package]] + name = "wasi" + version = "0.11.0+wasi-snapshot-preview1" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +- +-[[package]] +-name = "wasm-bindgen" +-version = "0.2.97" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d15e63b4482863c109d70a7b8706c1e364eb6ea449b201a76c5b89cedcec2d5c" +-dependencies = [ +- "cfg-if", +- "once_cell", +- "wasm-bindgen-macro", +-] +- +-[[package]] +-name = "wasm-bindgen-backend" +-version = "0.2.97" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "8d36ef12e3aaca16ddd3f67922bc63e48e953f126de60bd33ccc0101ef9998cd" +-dependencies = [ +- "bumpalo", +- "log", +- "once_cell", +- "proc-macro2", +- "quote", +- "syn", +- "wasm-bindgen-shared", +-] +- +-[[package]] +-name = "wasm-bindgen-futures" +-version = "0.4.47" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9dfaf8f50e5f293737ee323940c7d8b08a66a95a419223d9f41610ca08b0833d" +-dependencies = [ +- "cfg-if", +- "js-sys", +- "once_cell", +- "wasm-bindgen", +- "web-sys", +-] +- +-[[package]] +-name = "wasm-bindgen-macro" +-version = "0.2.97" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "705440e08b42d3e4b36de7d66c944be628d579796b8090bfa3471478a2260051" +-dependencies = [ +- "quote", +- "wasm-bindgen-macro-support", +-] +- +-[[package]] +-name = "wasm-bindgen-macro-support" +-version = "0.2.97" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "98c9ae5a76e46f4deecd0f0255cc223cfa18dc9b261213b8aa0c7b36f61b3f1d" +-dependencies = [ +- "proc-macro2", +- "quote", +- "syn", +- "wasm-bindgen-backend", +- "wasm-bindgen-shared", +-] +- +-[[package]] +-name = "wasm-bindgen-shared" +-version = "0.2.97" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "6ee99da9c5ba11bd675621338ef6fa52296b76b83305e9b6e5c77d4c286d6d49" +- +-[[package]] +-name = "wasm-bindgen-test" +-version = "0.3.47" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "3d919bb60ebcecb9160afee6c71b43a58a4f0517a2de0054cd050d02cec08201" +-dependencies = [ +- "js-sys", +- "minicov", +- "once_cell", +- "scoped-tls", +- "wasm-bindgen", +- "wasm-bindgen-futures", +- "wasm-bindgen-test-macro", +-] +- +-[[package]] +-name = "wasm-bindgen-test-macro" +-version = "0.3.47" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "222ebde6ea87fbfa6bdd2e9f1fd8a91d60aee5db68792632176c4e16a74fc7d8" +-dependencies = [ +- "proc-macro2", +- "quote", +- "syn", +-] +- +-[[package]] +-name = "web-sys" +-version = "0.3.74" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "a98bc3c33f0fe7e59ad7cd041b89034fa82a7c2d4365ca538dda6cdaf513863c" +-dependencies = [ +- "js-sys", +- "wasm-bindgen", +-] +- +-[[package]] +-name = "winapi-util" +-version = "0.1.9" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +-dependencies = [ +- "windows-sys 0.59.0", +-] +- +-[[package]] +-name = "windows-sys" +-version = "0.52.0" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +-dependencies = [ +- "windows-targets", +-] +- +-[[package]] +-name = "windows-sys" +-version = "0.59.0" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +-dependencies = [ +- "windows-targets", +-] +- +-[[package]] +-name = "windows-targets" +-version = "0.52.6" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +-dependencies = [ +- "windows_aarch64_gnullvm", +- "windows_aarch64_msvc", +- "windows_i686_gnu", +- "windows_i686_gnullvm", +- "windows_i686_msvc", +- "windows_x86_64_gnu", +- "windows_x86_64_gnullvm", +- "windows_x86_64_msvc", +-] +- +-[[package]] +-name = "windows_aarch64_gnullvm" +-version = "0.52.6" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" +- +-[[package]] +-name = "windows_aarch64_msvc" +-version = "0.52.6" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" +- +-[[package]] +-name = "windows_i686_gnu" +-version = "0.52.6" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" +- +-[[package]] +-name = "windows_i686_gnullvm" +-version = "0.52.6" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" +- +-[[package]] +-name = "windows_i686_msvc" +-version = "0.52.6" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" +- +-[[package]] +-name = "windows_x86_64_gnu" +-version = "0.52.6" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" +- +-[[package]] +-name = "windows_x86_64_gnullvm" +-version = "0.52.6" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" +- +-[[package]] +-name = "windows_x86_64_msvc" +-version = "0.52.6" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +--- rust-ring-0.17.14.orig/build.rs ++++ rust-ring-0.17.14/build.rs +@@ -430,7 +430,7 @@ fn build_c_code( + out_dir: &Path, + core_name_and_version: &str, + ) { +- let (asm_srcs, obj_srcs) = if let Some(asm_target) = asm_target { ++ let (mut asm_srcs, mut obj_srcs) = if let Some(asm_target) = asm_target { + let perlasm_src_dsts = perlasm_src_dsts(generated_dir, asm_target); + + let asm_srcs = asm_srcs(perlasm_src_dsts); +@@ -450,6 +450,11 @@ fn build_c_code( + (vec![], vec![]) + }; + ++ if target.arch == "arm" { ++ asm_srcs = vec![]; ++ obj_srcs = vec![]; ++ } ++ + let core_srcs = sources_for_arch(&target.arch) + .into_iter() + .filter(|p| !is_perlasm(p)) +--- rust-ring-0.17.14.orig/include/ring-core/target.h ++++ rust-ring-0.17.14/include/ring-core/target.h +@@ -31,9 +31,6 @@ + #elif defined(__AARCH64EL__) || defined(_M_ARM64) + #define OPENSSL_64_BIT + #define OPENSSL_AARCH64 +-#elif defined(__ARMEL__) || defined(_M_ARM) +-#define OPENSSL_32_BIT +-#define OPENSSL_ARM + // All of following architectures are only supported when `__BYTE_ORDER__` can be used to detect + // endianness (in crypto/internal.h). + #elif !defined(__BYTE_ORDER__) +@@ -44,13 +41,8 @@ + #error "Unsupported endianness" + #elif defined(__LP64__) + #define OPENSSL_64_BIT +-#elif defined(__ILP32__) +-#define OPENSSL_32_BIT +-// Versions of GCC before 10.0 didn't define `__ILP32__` for all 32-bit targets. +-#elif defined(__MIPSEL__) || defined(__MIPSEB__) || defined(__PPC__) || defined(__powerpc__) || defined(__csky__) || defined(__XTENSA__) +-#define OPENSSL_32_BIT + #else +-#error "Unknown target CPU" ++#define OPENSSL_32_BIT + #endif + + #if defined(__APPLE__) +@@ -79,9 +71,9 @@ + + // Disable 32-bit Arm assembly on Apple platforms. The last iOS version that + // supported 32-bit Arm was iOS 10. +-#if defined(OPENSSL_APPLE) && defined(OPENSSL_ARM) ++//#if defined(OPENSSL_APPLE) && defined(OPENSSL_ARM) + #define OPENSSL_ASM_INCOMPATIBLE +-#endif ++//#endif + + #if defined(OPENSSL_ASM_INCOMPATIBLE) + #undef OPENSSL_ASM_INCOMPATIBLE +--- rust-ring-0.17.14.orig/src/aead/aes.rs ++++ rust-ring-0.17.14/src/aead/aes.rs +@@ -54,7 +54,7 @@ pub(super) enum Key { + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64" + ))] +@@ -84,7 +84,7 @@ impl Key { + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86_64", + target_arch = "x86" + ))] +@@ -109,7 +109,7 @@ impl Key { + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64" + ))] +--- rust-ring-0.17.14.orig/src/aead/aes/bs.rs ++++ rust-ring-0.17.14/src/aead/aes/bs.rs +@@ -12,7 +12,7 @@ + // OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + // CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +-#![cfg(all(target_arch = "arm", target_endian = "little"))] ++#![cfg(all(target_arch = "armxxx", target_endian = "little"))] + + use super::{Counter, Overlapping, AES_KEY}; + +--- rust-ring-0.17.14.orig/src/aead/aes/ffi.rs ++++ rust-ring-0.17.14/src/aead/aes/ffi.rs +@@ -60,7 +60,7 @@ impl AES_KEY { + } + } + +-#[cfg(all(target_arch = "arm", target_endian = "little"))] ++#[cfg(all(target_arch = "armxxx", target_endian = "little"))] + impl AES_KEY { + pub(super) unsafe fn derive( + f: for<'a> unsafe extern "C" fn(*mut AES_KEY, &'a AES_KEY), +--- rust-ring-0.17.14.orig/src/aead/aes/vp.rs ++++ rust-ring-0.17.14/src/aead/aes/vp.rs +@@ -14,7 +14,7 @@ + + #![cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64" + ))] +@@ -24,7 +24,7 @@ use crate::{cpu, error}; + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little") ++ all(target_arch = "armxxx", target_endian = "little") + ))] + type RequiredCpuFeatures = cpu::arm::Neon; + +@@ -48,7 +48,7 @@ impl Key { + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86_64" + ))] + impl EncryptBlock for Key { +@@ -71,7 +71,7 @@ impl EncryptCtr32 for Key { + } + } + +-#[cfg(all(target_arch = "arm", target_endian = "little"))] ++#[cfg(all(target_arch = "armxxx", target_endian = "little"))] + impl EncryptCtr32 for Key { + fn ctr32_encrypt_within(&self, in_out: Overlapping<'_>, ctr: &mut Counter) { + use super::{super::overlapping::IndexError, bs, BLOCK_LEN}; +--- rust-ring-0.17.14.orig/src/aead/aes_gcm.rs ++++ rust-ring-0.17.14/src/aead/aes_gcm.rs +@@ -27,7 +27,7 @@ use core::ops::RangeFrom; + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64" + ))] +@@ -66,7 +66,7 @@ enum DynKey { + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little") ++ all(target_arch = "armxxx", target_endian = "little") + ))] + Simd(Combo), + +@@ -112,7 +112,7 @@ impl DynKey { + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little") ++ all(target_arch = "armxxx", target_endian = "little") + ))] + if let Some(cpu) = cpu.get_feature() { + return Self::new_neon(key, cpu); +@@ -129,7 +129,7 @@ impl DynKey { + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little") ++ all(target_arch = "armxxx", target_endian = "little") + ))] + #[cfg_attr(target_arch = "aarch64", inline(never))] + fn new_neon(key: aes::KeyBytes, cpu: cpu::arm::Neon) -> Result { +@@ -154,7 +154,7 @@ impl DynKey { + #[cfg_attr( + any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64", + ), +@@ -210,7 +210,7 @@ pub(super) fn seal( + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86_64", + target_arch = "x86" + ))] +@@ -243,7 +243,7 @@ fn seal_whole_partial) => ChaCha20_ctr32_nohw }, + self, counter, in_out, ()) + } +- } else if #[cfg(all(target_arch = "arm", target_endian = "little"))] { ++ } else if #[cfg(all(target_arch = "armxxx", target_endian = "little"))] { + use cpu::{GetFeature as _, arm::Neon}; + const NEON_MIN_LEN: usize = 192 + 1; + if in_out.len() >= NEON_MIN_LEN { +@@ -183,7 +183,7 @@ impl Counter { + test, + not(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86_64" + )) + ))] +@@ -218,7 +218,7 @@ mod tests { + // Always use `MAX_OFFSET` if we hav assembly code. + let max_offset = if cfg!(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64" + )) { +--- rust-ring-0.17.14.orig/src/aead/gcm/ffi.rs ++++ rust-ring-0.17.14/src/aead/gcm/ffi.rs +@@ -23,7 +23,7 @@ pub(super) const ZERO_BLOCK: Block = [0u + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64" + ))] +@@ -42,7 +42,7 @@ macro_rules! htable_new { + /// `ghash()`. + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64" + ))] +@@ -79,7 +79,7 @@ impl KeyValue { + /// * `f` may inspect CPU features. + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64" + ))] +@@ -97,7 +97,7 @@ impl HTable { + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little") ++ all(target_arch = "armxxx", target_endian = "little") + ))] + pub(super) unsafe fn gmult( + &self, +--- rust-ring-0.17.14.orig/src/aead/gcm/neon.rs ++++ rust-ring-0.17.14/src/aead/gcm/neon.rs +@@ -14,7 +14,7 @@ + + #![cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little") ++ all(target_arch = "armxxx", target_endian = "little") + ))] + + use super::{HTable, KeyValue, UpdateBlock, UpdateBlocks, Xi, BLOCK_LEN}; +--- rust-ring-0.17.14.orig/src/aead/overlapping/base.rs ++++ rust-ring-0.17.14/src/aead/overlapping/base.rs +@@ -38,7 +38,7 @@ impl<'o, T> Overlapping<'o, T> { + } + + #[cfg(any( +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86" + ))] + pub fn copy_within(self) -> &'o mut [T] +@@ -55,7 +55,7 @@ impl<'o, T> Overlapping<'o, T> { + } + + #[cfg(any( +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86" + ))] + pub fn into_slice_src_mut(self) -> (&'o mut [T], RangeFrom) { +--- rust-ring-0.17.14.orig/src/aead/poly1305.rs ++++ rust-ring-0.17.14/src/aead/poly1305.rs +@@ -15,7 +15,7 @@ + // TODO: enforce maximum input length. + + use super::{Tag, TAG_LEN}; +-#[cfg(all(target_arch = "arm", target_endian = "little"))] ++#[cfg(all(target_arch = "armxxx", target_endian = "little"))] + use crate::cpu::GetFeature as _; + use crate::{cpu, polyfill::slice::AsChunks}; + +@@ -38,7 +38,7 @@ impl Key { + } + + pub(super) enum Context { +- #[cfg(all(target_arch = "arm", target_endian = "little"))] ++ #[cfg(all(target_arch = "armxxx", target_endian = "little"))] + ArmNeon(ffi_arm_neon::State), + Fallback(ffi_fallback::State), + } +@@ -46,7 +46,7 @@ pub(super) enum Context { + impl Context { + #[inline] + pub(super) fn from_key(key: Key, cpu: cpu::Features) -> Self { +- #[cfg(all(target_arch = "arm", target_endian = "little"))] ++ #[cfg(all(target_arch = "armxxx", target_endian = "little"))] + if let Some(cpu) = cpu.get_feature() { + return ffi_arm_neon::State::new_context(key, cpu); + } +@@ -64,7 +64,7 @@ impl Context { + + fn update_internal(&mut self, input: &[u8]) { + match self { +- #[cfg(all(target_arch = "arm", target_endian = "little"))] ++ #[cfg(all(target_arch = "armxxx", target_endian = "little"))] + Self::ArmNeon(state) => state.update_internal(input), + Self::Fallback(state) => state.update_internal(input), + } +@@ -73,7 +73,7 @@ impl Context { + pub(super) fn finish(mut self, input: &[u8]) -> Tag { + self.update_internal(input); + match self { +- #[cfg(all(target_arch = "arm", target_endian = "little"))] ++ #[cfg(all(target_arch = "armxxx", target_endian = "little"))] + Self::ArmNeon(state) => state.finish(), + Self::Fallback(state) => state.finish(), + } +--- rust-ring-0.17.14.orig/src/aead/poly1305/ffi_arm_neon.rs ++++ rust-ring-0.17.14/src/aead/poly1305/ffi_arm_neon.rs +@@ -13,7 +13,7 @@ + // OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + // CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +-#![cfg(all(target_arch = "arm", target_endian = "little"))] ++#![cfg(all(target_arch = "armxxx", target_endian = "little"))] + + use super::{Key, Tag, KEY_LEN, TAG_LEN}; + use crate::{c, cpu::arm::Neon}; +--- rust-ring-0.17.14.orig/src/arithmetic/montgomery.rs ++++ rust-ring-0.17.14/src/arithmetic/montgomery.rs +@@ -136,7 +136,7 @@ pub(super) fn limbs_mul_mont( + (MIN_LIMBS, MOD_FALLBACK, ()) => bn_mul_mont_nohw + }) + } +- } else if #[cfg(all(target_arch = "arm", target_endian = "little"))] { ++ } else if #[cfg(all(target_arch = "armxxx", target_endian = "little"))] { + const MIN_8X: usize = 8; + const MOD_8X: usize = 8; + if n.len() >= MIN_8X && n.len() % MOD_8X == 0 { +@@ -192,7 +192,7 @@ pub(super) fn limbs_mul_mont( + cfg_if! { + if #[cfg(not(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86_64")))] { + + // TODO: Stop calling this from C and un-export it. +@@ -250,7 +250,7 @@ cfg_if! { + feature = "alloc", + not(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86_64" + )) + ))] +@@ -282,7 +282,7 @@ pub(super) fn limbs_from_mont_in_place(r + + #[cfg(not(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86_64" + )))] + fn limbs_mul(r: &mut [Limb], a: &[Limb], b: &[Limb]) { +@@ -302,7 +302,7 @@ fn limbs_mul(r: &mut [Limb], a: &[Limb], + test, + not(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86_64", + )) + ))] +--- rust-ring-0.17.14.orig/src/cpu.rs ++++ rust-ring-0.17.14/src/cpu.rs +@@ -63,7 +63,7 @@ macro_rules! impl_get_feature { + IntelCpu, + + #[cfg(any(all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", target_arch = "x86_64"))] + // Synthesized to ensure the dynamic flag set is always non-zero. + // +@@ -147,7 +147,7 @@ mod features { + } + + cfg_if::cfg_if! { +- if #[cfg(any(all(target_arch = "aarch64", target_endian = "little"), all(target_arch = "arm", target_endian = "little"), ++ if #[cfg(any(all(target_arch = "aarch64", target_endian = "little"), all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", target_arch = "x86_64"))] { + impl Features { + // SAFETY: This must only be called after CPU features have been written +@@ -186,7 +186,7 @@ mod features { + const _: () = assert!(size_of::() == 0); + + cfg_if::cfg_if! { +- if #[cfg(any(all(target_arch = "aarch64", target_endian = "little"), all(target_arch = "arm", target_endian = "little")))] { ++ if #[cfg(any(all(target_arch = "aarch64", target_endian = "little"), all(target_arch = "armxxx", target_endian = "little")))] { + pub mod arm; + use arm::featureflags; + } else if #[cfg(any(target_arch = "x86", target_arch = "x86_64"))] { +--- rust-ring-0.17.14.orig/src/cpu/arm.rs ++++ rust-ring-0.17.14/src/cpu/arm.rs +@@ -23,7 +23,7 @@ mod abi_assumptions { + // (`N0`, `Limb`, `LimbMask`, `crypto_word_t` etc.). + #[cfg(target_arch = "aarch64")] + const _ASSUMED_POINTER_SIZE: usize = 8; +- #[cfg(target_arch = "arm")] ++ #[cfg(target_arch = "armxxx")] + const _ASSUMED_POINTER_SIZE: usize = 4; + const _ASSUMED_USIZE_SIZE: () = assert!(size_of::() == _ASSUMED_POINTER_SIZE); + const _ASSUMED_REF_SIZE: () = assert!(size_of::<&'static u8>() == _ASSUMED_POINTER_SIZE); +@@ -95,7 +95,7 @@ pub(super) mod featureflags { + polyfill::{once_cell::race, usize_from_u32}, + }; + use core::num::NonZeroUsize; +- #[cfg(all(target_arch = "arm", target_endian = "little"))] ++ #[cfg(all(target_arch = "armxxx", target_endian = "little"))] + use core::sync::atomic::{AtomicU32, Ordering}; + + pub(in super::super) fn get_or_init() -> cpu::Features { +@@ -114,7 +114,7 @@ pub(super) mod featureflags { + let merged = CAPS_STATIC | detected; + + #[cfg(all( +- target_arch = "arm", ++ target_arch = "armxxx", + target_endian = "little", + target_has_atomic = "32" + ))] +@@ -181,7 +181,7 @@ pub(super) mod featureflags { + ; + + // TODO(MSRV): 32-bit ARM doesn't support any static feature detection yet. +- #[cfg(all(target_arch = "arm", target_endian = "little"))] ++ #[cfg(all(target_arch = "armxxx", target_endian = "little"))] + pub(in super::super) const STATIC_DETECTED: u32 = 0; + } + +--- rust-ring-0.17.14.orig/src/cpu/arm/linux.rs ++++ rust-ring-0.17.14/src/cpu/arm/linux.rs +@@ -75,7 +75,7 @@ pub fn detect_features() -> u32 { + + #[cfg(all( + not(target_env = "uclibc"), +- all(target_arch = "arm", target_endian = "little") ++ all(target_arch = "armxxx", target_endian = "little") + ))] + pub fn detect_features() -> u32 { + use super::CAPS_STATIC; +--- rust-ring-0.17.14.orig/src/digest/sha2/fallback.rs ++++ rust-ring-0.17.14/src/digest/sha2/fallback.rs +@@ -22,7 +22,7 @@ use core::{ + #[cfg_attr( + any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86_64" + ), + allow(dead_code) +--- rust-ring-0.17.14.orig/src/digest/sha2/mod.rs ++++ rust-ring-0.17.14/src/digest/sha2/mod.rs +@@ -23,7 +23,7 @@ pub(super) const CHAINING_WORDS: usize = + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86_64" + ))] + #[macro_use] +--- rust-ring-0.17.14.orig/src/digest/sha2/sha2_32.rs ++++ rust-ring-0.17.14/src/digest/sha2/sha2_32.rs +@@ -34,7 +34,7 @@ pub(crate) fn block_data_order_32( + } else { + sha2_32_ffi!(unsafe { () => sha256_block_data_order_nohw }, state, data, ()) + } +- } else if #[cfg(all(target_arch = "arm", target_endian = "little"))] { ++ } else if #[cfg(all(target_arch = "armxxx", target_endian = "little"))] { + use cpu::{GetFeature as _, arm::Neon}; + if let Some(cpu) = cpu.get_feature() { + sha2_32_ffi!(unsafe { Neon => sha256_block_data_order_neon }, state, data, cpu) +--- rust-ring-0.17.14.orig/src/digest/sha2/sha2_64.rs ++++ rust-ring-0.17.14/src/digest/sha2/sha2_64.rs +@@ -34,7 +34,7 @@ pub(crate) fn block_data_order_64( + } else { + sha2_64_ffi!(unsafe { () => sha512_block_data_order_nohw }, state, data, ()) + } +- } else if #[cfg(all(target_arch = "arm", target_endian = "little"))] { ++ } else if #[cfg(all(target_arch = "armxxx", target_endian = "little"))] { + use cpu::{GetFeature as _, arm::Neon}; + if let Some(cpu) = cpu.get_feature() { + sha2_64_ffi!(unsafe { Neon => sha512_block_data_order_neon }, state, data, cpu) +--- rust-ring-0.17.14.orig/src/ec/curve25519/x25519.rs ++++ rust-ring-0.17.14/src/ec/curve25519/x25519.rs +@@ -68,7 +68,7 @@ fn x25519_public_from_private( + let private_key = ops::MaskedScalar::from_bytes_masked(*private_key); + + #[cfg(all( +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + any(target_os = "android", target_os = "linux") + ))] + if let Some(cpu) = >::get_feature(&cpu_features) { +@@ -115,7 +115,7 @@ fn x25519_ecdh( + #[allow(unused_variables)] cpu_features: cpu::Features, + ) { + #[cfg(all( +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + any(target_os = "android", target_os = "linux") + ))] + if let Some(cpu) = >::get_feature(&cpu_features) { +@@ -166,7 +166,7 @@ fn x25519_ecdh( + + // BoringSSL uses `!defined(OPENSSL_APPLE)`. + #[cfg(all( +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + any(target_os = "android", target_os = "linux") + ))] + fn x25519_neon( +--- rust-ring-0.17.14.orig/src/lib.rs ++++ rust-ring-0.17.14/src/lib.rs +@@ -82,7 +82,7 @@ + #![cfg_attr( + not(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64", + feature = "alloc" +--- rust-ring-0.17.14.orig/src/polyfill.rs ++++ rust-ring-0.17.14/src/polyfill.rs +@@ -63,7 +63,7 @@ mod leading_zeros_skipped; + + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64" + ))] +--- rust-ring-0.17.14.orig/src/polyfill/slice/as_chunks.rs ++++ rust-ring-0.17.14/src/polyfill/slice/as_chunks.rs +@@ -37,7 +37,7 @@ impl<'a, T, const N: usize> AsChunks<'a, + self.0 + } + +- #[cfg(any(target_arch = "aarch64", target_arch = "arm", target_arch = "x86_64"))] ++ #[cfg(any(target_arch = "aarch64", target_arch = "armxxx", target_arch = "x86_64"))] + #[inline(always)] + pub fn as_ptr(&self) -> *const [T; N] { + self.0.as_ptr().cast() +--- rust-ring-0.17.14.orig/src/prefixed.rs ++++ rust-ring-0.17.14/src/prefixed.rs +@@ -84,7 +84,7 @@ macro_rules! prefixed_extern { + #[deprecated = "`#[export_name]` creates problems and we will stop doing it."] + #[cfg(not(any( + all(target_arch = "aarch64", target_endian = "little"), +- all(target_arch = "arm", target_endian = "little"), ++ all(target_arch = "armxxx", target_endian = "little"), + target_arch = "x86", + target_arch = "x86_64" + )))] diff --git a/patches/disable-slow-tests.patch b/patches/disable-slow-tests.patch new file mode 100644 index 0000000..232fe24 --- /dev/null +++ b/patches/disable-slow-tests.patch @@ -0,0 +1,6 @@ +Index: ring/Cargo.toml +=================================================================== +--- ring.orig/Cargo.toml ++++ ring/Cargo.toml +@@ -210,1 +210,0 @@ +-slow_tests = [] diff --git a/patches/disable-tests-missing-testdata.patch b/patches/disable-tests-missing-testdata.patch new file mode 100644 index 0000000..e1124eb --- /dev/null +++ b/patches/disable-tests-missing-testdata.patch @@ -0,0 +1,890 @@ +Index: ring/tests/ed25519_tests.rs +=================================================================== +--- ring.orig/tests/ed25519_tests.rs ++++ ring/tests/ed25519_tests.rs +@@ -27,7 +27,7 @@ use wasm_bindgen_test::{wasm_bindgen_tes + #[cfg(all(target_arch = "wasm32", target_os = "unknown"))] + wasm_bindgen_test_configure!(run_in_browser); + +-/// Test vectors from BoringSSL. ++/* /// Test vectors from BoringSSL. + #[test] + fn test_signature_ed25519() { + test::run(test_file!("ed25519_tests.txt"), |section, test_case| { +@@ -69,10 +69,10 @@ fn test_signature_ed25519() { + + Ok(()) + }); +-} ++} */ + + /// Test vectors from BoringSSL. +-#[test] ++/*#[test] + fn test_signature_ed25519_verify() { + test::run( + test_file!("ed25519_verify_tests.txt"), +@@ -91,7 +91,7 @@ fn test_signature_ed25519_verify() { + Ok(()) + }, + ); +-} ++}*/ + + fn test_signature_verification( + public_key: &[u8], +@@ -127,7 +127,7 @@ enum FromPkcs8Variant { + MaybeUnchecked, + } + +-#[test] ++/* #[test] + fn test_ed25519_from_pkcs8_unchecked() { + test_ed25519_from_pkcs8_( + FromPkcs8Variant::MaybeUnchecked, +@@ -189,7 +189,7 @@ fn test_ed25519_from_pkcs8_( + Ok(()) + }, + ); +-} ++} */ + + #[test] + fn ed25519_test_generate_pkcs8() { +Index: ring/src/aead/aes.rs +=================================================================== +--- ring.orig/src/aead/aes.rs ++++ ring/src/aead/aes.rs +@@ -209,7 +209,7 @@ mod tests { + use super::*; + use crate::testutil as test; + +- #[test] ++ /* #[test] + pub fn test_aes() { + test::run(test_vector_file!("aes_tests.txt"), |section, test_case| { + assert_eq!(section, ""); +@@ -223,7 +223,7 @@ mod tests { + + Ok(()) + }) +- } ++ } */ + + fn consume_key(test_case: &mut test::TestCase, name: &str) -> Key { + let key = test_case.consume_bytes(name); +Index: ring/src/aead/chacha.rs +=================================================================== +--- ring.orig/src/aead/chacha.rs ++++ ring/src/aead/chacha.rs +@@ -213,7 +213,7 @@ mod tests { + (0, 0) + }; + +- #[test] ++ /* #[test] + fn chacha20_test_default() { + // Always use `MAX_OFFSET` if we hav assembly code. + let max_offset = if cfg!(any( +@@ -235,7 +235,7 @@ mod tests { + chacha20_test(MAX_ALIGNMENT_AND_OFFSET_SUBSET, |key, ctr, in_out, _cpu| { + fallback::ChaCha20_ctr32(key, ctr, in_out) + }); +- } ++ } */ + + // Verifies the encryption is successful when done on overlapping buffers. + // +@@ -244,7 +244,7 @@ mod tests { + // not exactly overlapping. Such failures are dependent not only on the + // degree of overlapping but also the length of the data. `encrypt_within` + // works around that. +- fn chacha20_test( ++ /*fn chacha20_test( + max_alignment_and_offset: (usize, usize), + f: impl for<'k, 'o> Fn(&'k Key, Counter, Overlapping<'o>, cpu::Features), + ) { +@@ -288,7 +288,7 @@ mod tests { + Ok(()) + }, + ); +- } ++ }*/ + + fn chacha20_test_case_inner( + key: &Key, +Index: ring/src/arithmetic/bigint.rs +=================================================================== +--- ring.orig/src/arithmetic/bigint.rs ++++ ring/src/arithmetic/bigint.rs +@@ -841,7 +841,7 @@ mod tests { + + impl PublicModulus for M {} + +- #[test] ++ /* #[test] + fn test_elem_exp_consttime() { + let cpu_features = cpu::features(); + test::run( +@@ -947,9 +947,9 @@ mod tests { + Ok(()) + }, + ) +- } ++ } */ + +- #[test] ++ /* #[test] + fn test_elem_squared() { + let cpu_features = cpu::features(); + test::run( +@@ -970,9 +970,9 @@ mod tests { + Ok(()) + }, + ) +- } ++ } */ + +- #[test] ++ /* #[test] + fn test_elem_reduced() { + let cpu_features = cpu::features(); + test::run( +@@ -1022,7 +1022,7 @@ mod tests { + Ok(()) + }, + ) +- } ++ } */ + + fn consume_elem( + test_case: &mut test::TestCase, +Index: ring/src/ec/suite_b/ops.rs +=================================================================== +--- ring.orig/src/ec/suite_b/ops.rs ++++ ring/src/ec/suite_b/ops.rs +@@ -656,7 +656,7 @@ mod tests { + q_minus_n_plus_n_equals_0_test(&p384::PUBLIC_SCALAR_OPS); + } + +- #[test] ++ /* #[test] + fn p256_elem_add_test() { + elem_add_test( + &p256::PUBLIC_SCALAR_OPS, +@@ -670,7 +670,7 @@ mod tests { + &p384::PUBLIC_SCALAR_OPS, + test_vector_file!("ops/p384_elem_sum_tests.txt"), + ); +- } ++ } */ + + fn elem_add_test(ops: &PublicScalarOps, test_file: test::File) { + let cops = ops.public_key_ops.common; +@@ -697,7 +697,7 @@ mod tests { + // XXX: There's no `p256_sub` in *ring*; it's logic is inlined into + // the point arithmetic functions. Thus, we can't test it. + +- #[test] ++ /* #[test] + fn p384_elem_sub_test() { + prefixed_extern! { + fn p384_elem_sub(r: *mut Limb, a: *const Limb, b: *const Limb); +@@ -707,7 +707,7 @@ mod tests { + p384_elem_sub, + test_vector_file!("ops/p384_elem_sum_tests.txt"), + ); +- } ++ } */ + + fn elem_sub_test( + ops: &'static CommonOps, +@@ -749,7 +749,7 @@ mod tests { + // XXX: There's no `p256_div_by_2` in *ring*; it's logic is inlined + // into the point arithmetic functions. Thus, we can't test it. + +- #[test] ++ /* #[test] + fn p384_elem_div_by_2_test() { + prefixed_extern! { + fn p384_elem_div_by_2(r: *mut Limb, a: *const Limb); +@@ -759,7 +759,7 @@ mod tests { + p384_elem_div_by_2, + test_vector_file!("ops/p384_elem_div_by_2_tests.txt"), + ); +- } ++ } */ + + fn elem_div_by_2_test( + ops: &'static CommonOps, +@@ -784,7 +784,7 @@ mod tests { + } + + // There is no `ecp_nistz256_neg` on other targets. +- #[cfg(target_arch = "x86_64")] ++ /* #[cfg(target_arch = "x86_64")] + #[test] + fn p256_elem_neg_test() { + prefixed_extern! { +@@ -807,7 +807,7 @@ mod tests { + p384_elem_neg, + test_vector_file!("ops/p384_elem_neg_tests.txt"), + ); +- } ++ } */ + + fn elem_neg_test( + ops: &'static CommonOps, +@@ -843,7 +843,7 @@ mod tests { + }) + } + +- #[test] ++ /* #[test] + fn p256_elem_mul_test() { + elem_mul_test( + &p256::COMMON_OPS, +@@ -857,7 +857,7 @@ mod tests { + &p384::COMMON_OPS, + test_vector_file!("ops/p384_elem_mul_tests.txt"), + ); +- } ++ }*/ + + fn elem_mul_test(ops: &'static CommonOps, test_file: test::File) { + let q = &ops.elem_modulus(cpu::features()); +@@ -874,7 +874,7 @@ mod tests { + }) + } + +- #[test] ++ /* #[test] + fn p256_scalar_mul_test() { + scalar_mul_test( + &p256::SCALAR_OPS, +@@ -888,7 +888,7 @@ mod tests { + &p384::SCALAR_OPS, + test_vector_file!("ops/p384_scalar_mul_tests.txt"), + ); +- } ++ } */ + + fn scalar_mul_test(ops: &ScalarOps, test_file: test::File) { + let cpu = cpu::features(); +@@ -906,7 +906,7 @@ mod tests { + }) + } + +- #[test] ++ /* #[test] + fn p256_scalar_square_test() { + prefixed_extern! { + fn p256_scalar_sqr_rep_mont(r: *mut Limb, a: *const Limb, rep: LeakyWord); +@@ -916,7 +916,7 @@ mod tests { + p256_scalar_sqr_rep_mont, + test_vector_file!("ops/p256_scalar_square_tests.txt"), + ); +- } ++ } */ + + // XXX: There's no `p384_scalar_square_test()` because there's no dedicated + // `p384_scalar_sqr_rep_mont()`. +@@ -968,7 +968,7 @@ mod tests { + let _ = p384::PRIVATE_SCALAR_OPS.scalar_inv_to_mont(&ZERO_SCALAR, cpu::features()); + } + +- #[test] ++ /* #[test] + fn p256_point_sum_test() { + point_sum_test( + &p256::PRIVATE_KEY_OPS, +@@ -982,7 +982,7 @@ mod tests { + &p384::PRIVATE_KEY_OPS, + test_vector_file!("ops/p384_point_sum_tests.txt"), + ); +- } ++ } */ + + fn point_sum_test(ops: &PrivateKeyOps, test_file: test::File) { + let cpu = cpu::features(); +@@ -1001,7 +1001,7 @@ mod tests { + }); + } + +- #[test] ++ /* #[test] + fn p256_point_sum_mixed_test() { + prefixed_extern! { + fn p256_point_add_affine( +@@ -1015,7 +1015,7 @@ mod tests { + p256_point_add_affine, + test_vector_file!("ops/p256_point_sum_mixed_tests.txt"), + ); +- } ++ } */ + + // XXX: There is no `nistz384_point_add_affine()`. + +@@ -1046,7 +1046,7 @@ mod tests { + }); + } + +- #[test] ++ /* #[test] + fn p256_point_double_test() { + prefixed_extern! { + fn p256_point_double( +@@ -1074,7 +1074,7 @@ mod tests { + p384_point_double, + test_vector_file!("ops/p384_point_double_tests.txt"), + ); +- } ++ } */ + + fn point_double_test( + ops: &PrivateKeyOps, +@@ -1102,7 +1102,7 @@ mod tests { + } + + /// TODO: We should be testing `point_mul` with points other than the generator. +- #[test] ++ /* #[test] + fn p256_point_mul_test() { + let generator = ( + Elem::from(&p256::GENERATOR.0), +@@ -1113,9 +1113,9 @@ mod tests { + |s, cpu| p256::PRIVATE_KEY_OPS.point_mul(s, &generator, cpu), + test_vector_file!("ops/p256_point_mul_base_tests.txt"), + ); +- } ++ } */ + +- /// TODO: We should be testing `point_mul` with points other than the generator. ++ /* /// TODO: We should be testing `point_mul` with points other than the generator. + #[test] + fn p384_point_mul_test() { + let generator = ( +@@ -1137,7 +1137,7 @@ mod tests { + &p256::PUBLIC_KEY_OPS, + test_vector_file!("ops/p256_point_mul_serialized_tests.txt"), + ); +- } ++ }*/ + + fn point_mul_serialized_test( + priv_ops: &PrivateKeyOps, +@@ -1183,7 +1183,7 @@ mod tests { + }) + } + +- #[test] ++ /* #[test] + fn p256_point_mul_base_test() { + point_mul_base_tests( + &p256::PRIVATE_KEY_OPS, +@@ -1199,7 +1199,7 @@ mod tests { + |s, cpu| p384::PRIVATE_KEY_OPS.point_mul_base(s, cpu), + test_vector_file!("ops/p384_point_mul_base_tests.txt"), + ); +- } ++ }*/ + + pub(super) fn point_mul_base_tests( + ops: &PrivateKeyOps, +Index: ring/src/ec/suite_b/public_key.rs +=================================================================== +--- ring.orig/src/ec/suite_b/public_key.rs ++++ ring/src/ec/suite_b/public_key.rs +@@ -71,7 +71,7 @@ mod tests { + use crate::cpu; + use crate::testutil as test; + +- #[test] ++ /* #[test] + fn parse_uncompressed_point_test() { + let cpu = cpu::features(); + test::run( +@@ -97,7 +97,7 @@ mod tests { + Ok(()) + }, + ); +- } ++ }*/ + + fn public_key_ops_from_curve_name(curve_name: &str) -> &'static PublicKeyOps { + if curve_name == "P-256" { +Index: ring/src/rsa/padding.rs +=================================================================== +--- ring.orig/src/rsa/padding.rs ++++ ring/src/rsa/padding.rs +@@ -97,7 +97,7 @@ mod test { + use crate::{digest, error}; + use alloc::vec; + +- #[test] ++ /* #[test] + fn test_pss_padding_verify() { + test::run( + test_vector_file!("rsa_pss_padding_tests.txt"), +@@ -132,10 +132,10 @@ mod test { + Ok(()) + }, + ); +- } ++ }*/ + + // Tests PSS encoding for various public modulus lengths. +- #[cfg(feature = "alloc")] ++ /*#[cfg(feature = "alloc")] + #[test] + fn test_pss_padding_encode() { + test::run( +@@ -173,5 +173,5 @@ mod test { + Ok(()) + }, + ); +- } ++ }*/ + } +Index: ring/src/testutil.rs +=================================================================== +--- ring.orig/src/testutil.rs ++++ ring/src/testutil.rs +@@ -541,7 +541,7 @@ mod tests { + use crate::error; + use crate::testutil as test; + +- #[test] ++ /* #[test] + fn one_ok() { + test::run(test_vector_file!("test_1_tests.txt"), |_, test_case| { + let _ = test_case.consume_string("Key"); +@@ -565,9 +565,9 @@ mod tests { + let _ = test_case.consume_string("Key"); + panic!("Oh noes!"); + }); +- } ++ } */ + +- #[test] ++ /* #[test] + #[should_panic(expected = "Test failed.")] + fn first_err() { + err_one(0) +@@ -636,5 +636,5 @@ mod tests { + test_vector_file!("test_1_syntax_error_tests.txt"), + |_, _| Ok(()), + ); +- } ++ } */ + } +Index: ring/tests/aead_tests.rs +=================================================================== +--- ring.orig/tests/aead_tests.rs ++++ ring/tests/aead_tests.rs +@@ -82,11 +82,11 @@ macro_rules! test_aead { + } + } + +-test_aead! { ++/*test_aead! { + { AES_128_GCM, "aead_aes_128_gcm_tests.txt" }, + { AES_256_GCM, "aead_aes_256_gcm_tests.txt" }, + { CHACHA20_POLY1305, "aead_chacha20_poly1305_tests.txt" }, +-} ++}*/ + + struct KnownAnswerTestCase<'a> { + key: &'a [u8], +@@ -445,7 +445,7 @@ fn test_aead_nonce_sizes() { + assert!(aead::Nonce::try_assume_unique_for_key(&nonce[..16]).is_err()); // 128 bits. + } + +-#[allow(clippy::range_plus_one)] ++/* #[allow(clippy::range_plus_one)] + #[test] + fn aead_chacha20_poly1305_openssh() { + // TODO: test_aead_key_sizes(...); +@@ -492,7 +492,7 @@ fn aead_chacha20_poly1305_openssh() { + Ok(()) + }, + ); +-} ++} */ + + #[test] + fn aead_test_aad_traits() { +Index: ring/tests/agreement_tests.rs +=================================================================== +--- ring.orig/tests/agreement_tests.rs ++++ ring/tests/agreement_tests.rs +@@ -72,7 +72,7 @@ fn agreement_traits() { + assert_eq!(unparsed_public_key.as_ref(), &[0x01, 0x02, 0x03]); + } + +-#[test] ++/* #[test] + fn agreement_agree_ephemeral() { + let rng = rand::SystemRandom::new(); + +@@ -128,7 +128,7 @@ fn agreement_agree_ephemeral() { + + Ok(()) + }); +-} ++} */ + + #[test] + fn test_agreement_ecdh_x25519_rfc_iterated() { +Index: ring/tests/digest_tests.rs +=================================================================== +--- ring.orig/tests/digest_tests.rs ++++ ring/tests/digest_tests.rs +@@ -25,7 +25,7 @@ use wasm_bindgen_test::{wasm_bindgen_tes + wasm_bindgen_test_configure!(run_in_browser); + + /// Test vectors from BoringSSL, Go, and other sources. +-#[test] ++/* #[test] + fn digest_misc() { + test::run(test_file!("digest_tests.txt"), |section, test_case| { + assert_eq!(section, ""); +@@ -48,7 +48,7 @@ fn digest_misc() { + + Ok(()) + }); +-} ++} */ + + /// Test some ways in which `Context::update` and/or `Context::finish` + /// could go wrong by testing every combination of updating three inputs +Index: ring/tests/ecdsa_tests.rs +=================================================================== +--- ring.orig/tests/ecdsa_tests.rs ++++ ring/tests/ecdsa_tests.rs +@@ -23,7 +23,7 @@ use ring::{test, test_file}; + + // ECDSA *signing* tests are in src/ec/ecdsa/signing.rs. + +-#[test] ++/* #[test] + fn ecdsa_from_pkcs8_test() { + let rng = rand::SystemRandom::new(); + +@@ -87,7 +87,7 @@ fn ecdsa_from_pkcs8_test() { + Ok(()) + }, + ); +-} ++} */ + + // Verify that, at least, we generate PKCS#8 documents that we can read. + #[test] +@@ -113,7 +113,7 @@ fn ecdsa_generate_pkcs8_test() { + } + } + +-#[test] ++/* #[test] + fn signature_ecdsa_verify_asn1_test() { + test::run( + test_file!("ecdsa_verify_asn1_tests.txt"), +@@ -144,7 +144,7 @@ fn signature_ecdsa_verify_asn1_test() { + Ok(()) + }, + ); +-} ++} + + #[test] + fn signature_ecdsa_verify_fixed_test() { +@@ -178,7 +178,7 @@ fn signature_ecdsa_verify_fixed_test() { + Ok(()) + }, + ); +-} ++} */ + + #[test] + fn ecdsa_test_public_key_coverage() { +@@ -217,7 +217,7 @@ fn ecdsa_test_public_key_coverage() { + // different each time. Because of that, here we simply verify that the + // signature verifies correctly. The known-answer tests themselves are in + // ecsda/signing.rs. +-#[test] ++/* #[test] + fn signature_ecdsa_sign_fixed_sign_and_verify_test() { + let rng = rand::SystemRandom::new(); + +@@ -264,9 +264,9 @@ fn signature_ecdsa_sign_fixed_sign_and_v + Ok(()) + }, + ); +-} ++} */ + +-// This test is not a known-answer test, though it re-uses the known-answer ++/* // This test is not a known-answer test, though it re-uses the known-answer + // test vectors. Because the nonce is randomized, the signature will be + // different each time. Because of that, here we simply verify that the + // signature verifies correctly. The known-answer tests themselves are in +@@ -318,4 +318,4 @@ fn signature_ecdsa_sign_asn1_test() { + Ok(()) + }, + ); +-} ++}*/ +Index: ring/tests/hkdf_tests.rs +=================================================================== +--- ring.orig/tests/hkdf_tests.rs ++++ ring/tests/hkdf_tests.rs +@@ -24,7 +24,7 @@ use wasm_bindgen_test::{wasm_bindgen_tes + #[cfg(all(target_arch = "wasm32", target_os = "unknown"))] + wasm_bindgen_test_configure!(run_in_browser); + +-#[test] ++/* #[test] + fn hkdf_tests() { + test::run(test_file!("hkdf_tests.txt"), |section, test_case| { + assert_eq!(section, ""); +@@ -57,7 +57,7 @@ fn hkdf_tests() { + + Ok(()) + }); +-} ++} */ + + #[test] + fn hkdf_output_len_tests() { +Index: ring/tests/hmac_tests.rs +=================================================================== +--- ring.orig/tests/hmac_tests.rs ++++ ring/tests/hmac_tests.rs +@@ -24,7 +24,7 @@ use wasm_bindgen_test::{wasm_bindgen_tes + #[cfg(all(target_arch = "wasm32", target_os = "unknown"))] + wasm_bindgen_test_configure!(run_in_browser); + +-#[test] ++/*#[test] + fn hmac_tests() { + test::run(test_file!("hmac_tests.txt"), |section, test_case| { + assert_eq!(section, ""); +@@ -66,7 +66,7 @@ fn hmac_tests() { + + Ok(()) + }); +-} ++} */ + + fn hmac_test_case_inner( + algorithm: hmac::Algorithm, +Index: ring/tests/pbkdf2_tests.rs +=================================================================== +--- ring.orig/tests/pbkdf2_tests.rs ++++ ring/tests/pbkdf2_tests.rs +@@ -25,7 +25,7 @@ use wasm_bindgen_test::{wasm_bindgen_tes + #[cfg(all(target_arch = "wasm32", target_os = "unknown"))] + wasm_bindgen_test_configure!(run_in_browser); + +-/// Test vectors from BoringSSL, Go, and other sources. ++/* /// Test vectors from BoringSSL, Go, and other sources. + #[test] + pub fn pbkdf2_tests() { + test::run(test_file!("pbkdf2_tests.txt"), |section, test_case| { +@@ -69,4 +69,4 @@ pub fn pbkdf2_tests() { + + Ok(()) + }); +-} ++} */ +Index: ring/tests/quic_tests.rs +=================================================================== +--- ring.orig/tests/quic_tests.rs ++++ ring/tests/quic_tests.rs +@@ -18,7 +18,7 @@ use ring::aead::quic; + #[allow(deprecated)] + use ring::{test, test_file}; + +-#[test] ++/* #[test] + fn quic_aes_128() { + test_quic(&quic::AES_128, test_file!("quic_aes_128_tests.txt")); + } +@@ -31,7 +31,7 @@ fn quic_aes_256() { + #[test] + fn quic_chacha20() { + test_quic(&quic::CHACHA20, test_file!("quic_chacha20_tests.txt")); +-} ++}*/ + + fn test_quic(alg: &'static quic::Algorithm, test_file: test::File) { + test_key_len(alg); +Index: ring/tests/rsa_tests.rs +=================================================================== +--- ring.orig/tests/rsa_tests.rs ++++ ring/tests/rsa_tests.rs +@@ -30,7 +30,7 @@ use wasm_bindgen_test::{wasm_bindgen_tes + #[cfg(all(target_arch = "wasm32", target_os = "unknown"))] + wasm_bindgen_test_configure!(run_in_browser); + +-#[test] ++/* #[test] + fn rsa_from_pkcs8_test() { + test::run( + test_file!("rsa_from_pkcs8_tests.txt"), +@@ -50,9 +50,9 @@ fn rsa_from_pkcs8_test() { + Ok(()) + }, + ); +-} ++} */ + +-#[cfg(feature = "alloc")] ++/* #[cfg(feature = "alloc")] + #[test] + fn test_signature_rsa_pkcs1_sign() { + let rng = rand::SystemRandom::new(); +@@ -91,9 +91,9 @@ fn test_signature_rsa_pkcs1_sign() { + Ok(()) + }, + ); +-} ++} */ + +-#[cfg(feature = "alloc")] ++/* #[cfg(feature = "alloc")] + #[test] + fn test_signature_rsa_pss_sign() { + test::run( +@@ -129,7 +129,7 @@ fn test_signature_rsa_pss_sign() { + Ok(()) + }, + ); +-} ++}*/ + + // `KeyPair::sign` requires that the output buffer is the same length as + // the public key modulus. Test what happens when it isn't the same length. +@@ -159,7 +159,7 @@ fn test_signature_rsa_pkcs1_sign_output_ + } + } + +-#[cfg(feature = "alloc")] ++/* #[cfg(feature = "alloc")] + #[test] + fn test_signature_rsa_pkcs1_verify() { + let sha1_params = &[ +@@ -238,9 +238,9 @@ fn test_signature_rsa_pkcs1_verify() { + Ok(()) + }, + ); +-} ++} */ + +-#[cfg(feature = "alloc")] ++/* #[cfg(feature = "alloc")] + #[test] + fn test_signature_rsa_pss_verify() { + test::run( +@@ -285,11 +285,11 @@ fn test_signature_rsa_pss_verify() { + Ok(()) + }, + ); +-} ++} */ + + // Test for `primitive::verify()`. Read public key parts from a file + // and use them to verify a signature. +-#[cfg(feature = "alloc")] ++/* #[cfg(feature = "alloc")] + #[test] + fn test_signature_rsa_primitive_verification() { + test::run( +@@ -307,7 +307,7 @@ fn test_signature_rsa_primitive_verifica + Ok(()) + }, + ) +-} ++}*/ + + #[cfg(feature = "alloc")] + #[test] +Index: ring/src/ec/suite_b/ecdsa/digest_scalar.rs +=================================================================== +--- ring.orig/src/ec/suite_b/ecdsa/digest_scalar.rs ++++ ring/src/ec/suite_b/ecdsa/digest_scalar.rs +@@ -71,7 +71,7 @@ mod tests { + use crate::testutil as test; + use crate::{cpu, digest, ec::suite_b::ops::*, limb}; + +- #[test] ++ /*#[test] + fn test() { + let cpu = cpu::features(); + test::run( +@@ -115,5 +115,5 @@ mod tests { + Ok(()) + }, + ); +- } ++ }*/ + } +Index: ring/src/ec/suite_b/ecdsa/signing.rs +=================================================================== +--- ring.orig/src/ec/suite_b/ecdsa/signing.rs ++++ ring/src/ec/suite_b/ecdsa/signing.rs +@@ -529,7 +529,7 @@ mod tests { + use crate::testutil as test; + use crate::{rand, signature}; + +- #[test] ++ /*#[test] + fn signature_ecdsa_sign_fixed_test() { + let rng = rand::SystemRandom::new(); + +@@ -611,5 +611,5 @@ mod tests { + Ok(()) + }, + ); +- } ++ }*/ + } +Index: ring/src/ec/suite_b/ops/p256.rs +=================================================================== +--- ring.orig/src/ec/suite_b/ops/p256.rs ++++ ring/src/ec/suite_b/ops/p256.rs +@@ -316,7 +316,7 @@ prefixed_extern! { + ); + } + +-#[cfg(test)] ++/*#[cfg(test)] + mod tests { + #[cfg(any( + all(target_arch = "aarch64", target_endian = "little"), +@@ -331,4 +331,4 @@ mod tests { + test_vector_file!("p256_point_mul_base_tests.txt"), + ); + } +-} ++}*/ +Index: ring/src/rsa/keypair.rs +=================================================================== +--- ring.orig/src/rsa/keypair.rs ++++ ring/src/rsa/keypair.rs +@@ -651,7 +651,7 @@ mod tests { + use crate::testutil as test; + use alloc::vec; + +- #[test] ++ /*#[test] + fn test_rsakeypair_private_exponentiate() { + let cpu = cpu::features(); + test::run( +@@ -681,5 +681,5 @@ mod tests { + Ok(()) + }, + ); +- } ++ }*/ + } diff --git a/patches/fix-tests-no-default-features.patch b/patches/fix-tests-no-default-features.patch new file mode 100644 index 0000000..fc3e309 --- /dev/null +++ b/patches/fix-tests-no-default-features.patch @@ -0,0 +1,746 @@ +Index: ring/src/aead/aes.rs +=================================================================== +--- ring.orig/src/aead/aes.rs ++++ ring/src/aead/aes.rs +@@ -205,6 +205,7 @@ fn encrypt_iv_xor_block_using_ctr32(key: + } + + #[cfg(test)] ++#[cfg(feature = "alloc")] + mod tests { + use super::*; + use crate::testutil as test; +Index: ring/src/aead/poly1305.rs +=================================================================== +--- ring.orig/src/aead/poly1305.rs ++++ ring/src/aead/poly1305.rs +@@ -90,6 +90,7 @@ pub(super) fn sign(key: Key, input: &[u8 + } + + #[cfg(test)] ++#[cfg(feature = "alloc")] + mod tests { + use super::*; + use crate::testutil as test; +Index: ring/src/ec/suite_b/ecdsa/digest_scalar.rs +=================================================================== +--- ring.orig/src/ec/suite_b/ecdsa/digest_scalar.rs ++++ ring/src/ec/suite_b/ecdsa/digest_scalar.rs +@@ -66,6 +66,7 @@ fn digest_scalar_(n: &Modulus, digest + } + + #[cfg(test)] ++#[cfg(feature = "alloc")] + mod tests { + use super::digest_bytes_scalar; + use crate::testutil as test; +Index: ring/src/ec/suite_b/ecdsa/signing.rs +=================================================================== +--- ring.orig/src/ec/suite_b/ecdsa/signing.rs ++++ ring/src/ec/suite_b/ecdsa/signing.rs +@@ -525,6 +525,7 @@ static EC_PUBLIC_KEY_P384_PKCS8_V1_TEMPL + }; + + #[cfg(test)] ++#[cfg(feature = "alloc")] + mod tests { + use crate::testutil as test; + use crate::{rand, signature}; +Index: ring/src/ec/suite_b/ecdsa/verification.rs +=================================================================== +--- ring.orig/src/ec/suite_b/ecdsa/verification.rs ++++ ring/src/ec/suite_b/ecdsa/verification.rs +@@ -274,6 +274,7 @@ pub static ECDSA_P384_SHA384_ASN1: Ecdsa + }; + + #[cfg(test)] ++#[cfg(feature = "alloc")] + mod tests { + extern crate alloc; + use super::*; +Index: ring/src/ec/suite_b/ops.rs +=================================================================== +--- ring.orig/src/ec/suite_b/ops.rs ++++ ring/src/ec/suite_b/ops.rs +@@ -665,6 +665,7 @@ mod tests { + } + + #[test] ++ #[cfg(feature = "alloc")] + fn p384_elem_add_test() { + elem_add_test( + &p384::PUBLIC_SCALAR_OPS, +@@ -672,6 +673,7 @@ mod tests { + ); + } */ + ++ #[cfg(feature = "alloc")] + fn elem_add_test(ops: &PublicScalarOps, test_file: test::File) { + let cops = ops.public_key_ops.common; + let q = &cops.elem_modulus(cpu::features()); +@@ -698,6 +700,7 @@ mod tests { + // the point arithmetic functions. Thus, we can't test it. + + /* #[test] ++ #[cfg(feature = "alloc")] + fn p384_elem_sub_test() { + prefixed_extern! { + fn p384_elem_sub(r: *mut Limb, a: *const Limb, b: *const Limb); +@@ -709,6 +712,7 @@ mod tests { + ); + } */ + ++ #[cfg(feature = "alloc")] + fn elem_sub_test( + ops: &'static CommonOps, + elem_sub: unsafe extern "C" fn(r: *mut Limb, a: *const Limb, b: *const Limb), +@@ -750,6 +754,7 @@ mod tests { + // into the point arithmetic functions. Thus, we can't test it. + + /* #[test] ++ #[cfg(feature = "alloc")] + fn p384_elem_div_by_2_test() { + prefixed_extern! { + fn p384_elem_div_by_2(r: *mut Limb, a: *const Limb); +@@ -761,6 +766,7 @@ mod tests { + ); + } */ + ++ #[cfg(feature = "alloc")] + fn elem_div_by_2_test( + ops: &'static CommonOps, + elem_div_by_2: unsafe extern "C" fn(r: *mut Limb, a: *const Limb), +@@ -786,6 +792,7 @@ mod tests { + // There is no `ecp_nistz256_neg` on other targets. + /* #[cfg(target_arch = "x86_64")] + #[test] ++ #[cfg(feature = "alloc")] + fn p256_elem_neg_test() { + prefixed_extern! { + fn ecp_nistz256_neg(r: *mut Limb, a: *const Limb); +@@ -798,6 +805,7 @@ mod tests { + } + + #[test] ++ #[cfg(feature = "alloc")] + fn p384_elem_neg_test() { + prefixed_extern! { + fn p384_elem_neg(r: *mut Limb, a: *const Limb); +@@ -809,6 +817,7 @@ mod tests { + ); + } */ + ++ #[cfg(feature = "alloc")] + fn elem_neg_test( + ops: &'static CommonOps, + elem_neg: unsafe extern "C" fn(r: *mut Limb, a: *const Limb), +@@ -844,6 +853,7 @@ mod tests { + } + + /* #[test] ++ #[cfg(feature = "alloc")] + fn p256_elem_mul_test() { + elem_mul_test( + &p256::COMMON_OPS, +@@ -852,11 +862,13 @@ mod tests { + } + + #[test] ++ #[cfg(feature = "alloc")] + fn p384_elem_mul_test() { + elem_mul_test( + &p384::COMMON_OPS, + test_vector_file!("ops/p384_elem_mul_tests.txt"), + ); ++ #[cfg(feature = "alloc")] + }*/ + + fn elem_mul_test(ops: &'static CommonOps, test_file: test::File) { +@@ -875,6 +887,7 @@ mod tests { + } + + /* #[test] ++ #[cfg(feature = "alloc")] + fn p256_scalar_mul_test() { + scalar_mul_test( + &p256::SCALAR_OPS, +@@ -883,6 +896,7 @@ mod tests { + } + + #[test] ++ #[cfg(feature = "alloc")] + fn p384_scalar_mul_test() { + scalar_mul_test( + &p384::SCALAR_OPS, +@@ -890,6 +904,7 @@ mod tests { + ); + } */ + ++ #[cfg(feature = "alloc")] + fn scalar_mul_test(ops: &ScalarOps, test_file: test::File) { + let cpu = cpu::features(); + let cops = ops.common; +@@ -907,6 +922,7 @@ mod tests { + } + + /* #[test] ++ #[cfg(feature = "alloc")] + fn p256_scalar_square_test() { + prefixed_extern! { + fn p256_scalar_sqr_rep_mont(r: *mut Limb, a: *const Limb, rep: LeakyWord); +@@ -921,6 +937,7 @@ mod tests { + // XXX: There's no `p384_scalar_square_test()` because there's no dedicated + // `p384_scalar_sqr_rep_mont()`. + ++ #[cfg(feature = "alloc")] + fn scalar_square_test( + ops: &ScalarOps, + sqr_rep: unsafe extern "C" fn(r: *mut Limb, a: *const Limb, rep: LeakyWord), +@@ -969,6 +986,7 @@ mod tests { + } + + /* #[test] ++ #[cfg(feature = "alloc")] + fn p256_point_sum_test() { + point_sum_test( + &p256::PRIVATE_KEY_OPS, +@@ -977,6 +995,7 @@ mod tests { + } + + #[test] ++ #[cfg(feature = "alloc")] + fn p384_point_sum_test() { + point_sum_test( + &p384::PRIVATE_KEY_OPS, +@@ -984,6 +1003,7 @@ mod tests { + ); + } */ + ++ #[cfg(feature = "alloc")] + fn point_sum_test(ops: &PrivateKeyOps, test_file: test::File) { + let cpu = cpu::features(); + +@@ -1019,6 +1039,7 @@ mod tests { + + // XXX: There is no `nistz384_point_add_affine()`. + ++ #[cfg(feature = "alloc")] + fn point_sum_mixed_test( + ops: &PrivateKeyOps, + point_add_affine: unsafe extern "C" fn( +@@ -1047,6 +1068,7 @@ mod tests { + } + + /* #[test] ++ #[cfg(feature = "alloc")] + fn p256_point_double_test() { + prefixed_extern! { + fn p256_point_double( +@@ -1062,6 +1084,7 @@ mod tests { + } + + #[test] ++ #[cfg(feature = "alloc")] + fn p384_point_double_test() { + prefixed_extern! { + fn p384_point_double( +@@ -1076,6 +1099,7 @@ mod tests { + ); + } */ + ++ #[cfg(feature = "alloc")] + fn point_double_test( + ops: &PrivateKeyOps, + point_double: unsafe extern "C" fn( +@@ -1103,6 +1127,7 @@ mod tests { + + /// TODO: We should be testing `point_mul` with points other than the generator. + /* #[test] ++ #[cfg(feature = "alloc")] + fn p256_point_mul_test() { + let generator = ( + Elem::from(&p256::GENERATOR.0), +@@ -1117,6 +1142,7 @@ mod tests { + + /* /// TODO: We should be testing `point_mul` with points other than the generator. + #[test] ++ #[cfg(feature = "alloc")] + fn p384_point_mul_test() { + let generator = ( + Elem::from(&p384::GENERATOR.0), +@@ -1124,6 +1150,7 @@ mod tests { + ); + + point_mul_base_tests( ++ #[cfg(feature = "alloc")] + &p384::PRIVATE_KEY_OPS, + |s, cpu| p384::PRIVATE_KEY_OPS.point_mul(s, &generator, cpu), + test_vector_file!("ops/p384_point_mul_base_tests.txt"), +@@ -1138,7 +1165,9 @@ mod tests { + test_vector_file!("ops/p256_point_mul_serialized_tests.txt"), + ); + }*/ ++ #[cfg(feature = "alloc")] + ++ #[cfg(feature = "alloc")] + fn point_mul_serialized_test( + priv_ops: &PrivateKeyOps, + pub_ops: &PublicKeyOps, +@@ -1149,6 +1178,7 @@ mod tests { + let q = &cops.elem_modulus(cpu); + let n = &cops.scalar_modulus(cpu); + test::run(test_file, |section, test_case| { ++ #[cfg(feature = "alloc")] + assert_eq!(section, ""); + let p_scalar = consume_scalar(n, test_case, "p_scalar"); + +@@ -1184,6 +1214,7 @@ mod tests { + } + + /* #[test] ++ #[cfg(feature = "alloc")] + fn p256_point_mul_base_test() { + point_mul_base_tests( + &p256::PRIVATE_KEY_OPS, +@@ -1193,6 +1224,7 @@ mod tests { + } + + #[test] ++ #[cfg(feature = "alloc")] + fn p384_point_mul_base_test() { + point_mul_base_tests( + &p384::PRIVATE_KEY_OPS, +@@ -1201,6 +1233,7 @@ mod tests { + ); + }*/ + ++ #[cfg(feature = "alloc")] + pub(super) fn point_mul_base_tests( + ops: &PrivateKeyOps, + f: impl Fn(&Scalar, cpu::Features) -> Point, +@@ -1255,6 +1288,7 @@ mod tests { + } + } + ++ #[cfg(feature = "alloc")] + fn consume_jacobian_point( + ops: &PrivateKeyOps, + test_case: &mut test::TestCase, +@@ -1275,6 +1309,7 @@ mod tests { + xy: [Limb; 2 * elem::NumLimbs::MAX], + } + ++ #[cfg(feature = "alloc")] + fn consume_affine_point( + ops: &PrivateKeyOps, + test_case: &mut test::TestCase, +@@ -1289,6 +1324,7 @@ mod tests { + }; + consume_point_elem(q, &mut p.xy, &elems, 0); + consume_point_elem(q, &mut p.xy, &elems, 1); ++ #[cfg(feature = "alloc")] + p + } + +@@ -1306,6 +1342,7 @@ mod tests { + Affine(Elem, Elem), + } + ++ #[cfg(feature = "alloc")] + fn consume_point( + ops: &PrivateKeyOps, + test_case: &mut test::TestCase, +@@ -1384,6 +1421,7 @@ mod tests { + scalar_parse_big_endian_variable(n, AllowZero::Yes, bytes).unwrap() + } + ++ #[cfg(feature = "alloc")] + fn consume_scalar_mont( + n: &Modulus, + test_case: &mut test::TestCase, +@@ -1394,6 +1432,7 @@ mod tests { + let s = scalar_parse_big_endian_variable(n, AllowZero::Yes, bytes).unwrap(); + // “Transmute” it to a `Scalar`. + Scalar { ++ #[cfg(feature = "alloc")] + limbs: s.limbs, + m: PhantomData, + encoding: PhantomData, +Index: ring/src/ec/suite_b/public_key.rs +=================================================================== +--- ring.orig/src/ec/suite_b/public_key.rs ++++ ring/src/ec/suite_b/public_key.rs +@@ -72,6 +72,7 @@ mod tests { + use crate::testutil as test; + + /* #[test] ++ #[cfg(feature = "alloc")] + fn parse_uncompressed_point_test() { + let cpu = cpu::features(); + test::run( +Index: ring/tests/aead_tests.rs +=================================================================== +--- ring.orig/tests/aead_tests.rs ++++ ring/tests/aead_tests.rs +@@ -23,12 +23,16 @@ wasm_bindgen_test_configure!(run_in_brow + use core::ops::RangeFrom; + use ring::{aead, error}; + #[allow(deprecated)] +-use ring::{test, test_file}; ++use ring::test; ++ ++#[cfg(feature = "alloc")] ++use ring::test_file; + + /// Generate the known answer test functions for the given algorithm and test + /// case input file, where each test is implemented by a test in `$test`. + /// + /// All of these tests can be run in parallel. ++#[cfg(feature = "alloc")] + macro_rules! test_known_answer { + ( $alg:ident, $test_file:expr, [ $( $test:ident ),+, ] ) => { + $( +@@ -46,6 +50,7 @@ macro_rules! test_known_answer { + /// Generate the tests for a given algorithm. + /// + /// All of these tests can be run in parallel. ++#[cfg(feature = "alloc")] + macro_rules! test_aead { + { $( { $alg:ident, $test_file:expr } ),+, } => { + mod aead_test { // Make `cargo test aead` include these files. +@@ -82,7 +87,8 @@ macro_rules! test_aead { + } + } + +-/*test_aead! { ++/*#[cfg(feature = "alloc")] ++test_aead! { + { AES_128_GCM, "aead_aes_128_gcm_tests.txt" }, + { AES_256_GCM, "aead_aes_256_gcm_tests.txt" }, + { CHACHA20_POLY1305, "aead_chacha20_poly1305_tests.txt" }, +@@ -447,6 +453,7 @@ fn test_aead_nonce_sizes() { + + /* #[allow(clippy::range_plus_one)] + #[test] ++#[cfg(feature = "alloc")] + fn aead_chacha20_poly1305_openssh() { + // TODO: test_aead_key_sizes(...); + +Index: ring/tests/agreement_tests.rs +=================================================================== +--- ring.orig/tests/agreement_tests.rs ++++ ring/tests/agreement_tests.rs +@@ -24,7 +24,10 @@ extern crate alloc; + + use ring::{agreement, error, rand}; + #[allow(deprecated)] +-use ring::{test, test_file}; ++use ring::test; ++ ++#[cfg(feature = "alloc")] ++use ring::test_file; + + #[test] + fn agreement_traits() { +@@ -73,6 +76,7 @@ fn agreement_traits() { + } + + /* #[test] ++#[cfg(feature = "alloc")] + fn agreement_agree_ephemeral() { + let rng = rand::SystemRandom::new(); + +@@ -131,6 +135,7 @@ fn agreement_agree_ephemeral() { + } */ + + #[test] ++#[cfg(feature = "alloc")] + fn test_agreement_ecdh_x25519_rfc_iterated() { + let mut k = h("0900000000000000000000000000000000000000000000000000000000000000"); + let mut u = k.clone(); +@@ -196,6 +201,7 @@ fn x25519_(private_key: &[u8], public_ke + }) + } + ++#[cfg(feature = "alloc")] + fn h(s: &str) -> Vec { + match test::from_hex(s) { + Ok(v) => v, +Index: ring/tests/digest_tests.rs +=================================================================== +--- ring.orig/tests/digest_tests.rs ++++ ring/tests/digest_tests.rs +@@ -16,7 +16,10 @@ + + use ring::digest; + #[allow(deprecated)] +-use ring::{test, test_file}; ++use ring::test; ++ ++#[cfg(feature = "alloc")] ++use ring::test_file; + + #[cfg(all(target_arch = "wasm32", target_os = "unknown"))] + use wasm_bindgen_test::{wasm_bindgen_test as test, wasm_bindgen_test_configure}; +@@ -26,6 +29,7 @@ wasm_bindgen_test_configure!(run_in_brow + + /// Test vectors from BoringSSL, Go, and other sources. + /* #[test] ++#[cfg(feature = "alloc")] + fn digest_misc() { + test::run(test_file!("digest_tests.txt"), |section, test_case| { + assert_eq!(section, ""); +Index: ring/tests/ecdsa_tests.rs +=================================================================== +--- ring.orig/tests/ecdsa_tests.rs ++++ ring/tests/ecdsa_tests.rs +@@ -19,11 +19,15 @@ use ring::{ + signature::{self, KeyPair}, + }; + #[allow(deprecated)] +-use ring::{test, test_file}; ++use ring::test; ++ ++#[cfg(feature = "alloc")] ++use ring::test_file; + + // ECDSA *signing* tests are in src/ec/ecdsa/signing.rs. + + /* #[test] ++#[cfg(feature = "alloc")] + fn ecdsa_from_pkcs8_test() { + let rng = rand::SystemRandom::new(); + +@@ -114,6 +118,7 @@ fn ecdsa_generate_pkcs8_test() { + } + + /* #[test] ++#[cfg(feature = "alloc")] + fn signature_ecdsa_verify_asn1_test() { + test::run( + test_file!("ecdsa_verify_asn1_tests.txt"), +@@ -147,6 +152,7 @@ fn signature_ecdsa_verify_asn1_test() { + } + + #[test] ++#[cfg(feature = "alloc")] + fn signature_ecdsa_verify_fixed_test() { + test::run( + test_file!("ecdsa_verify_fixed_tests.txt"), +@@ -218,6 +224,7 @@ fn ecdsa_test_public_key_coverage() { + // signature verifies correctly. The known-answer tests themselves are in + // ecsda/signing.rs. + /* #[test] ++#[cfg(feature = "alloc")] + fn signature_ecdsa_sign_fixed_sign_and_verify_test() { + let rng = rand::SystemRandom::new(); + +@@ -272,6 +279,7 @@ fn signature_ecdsa_sign_fixed_sign_and_v + // signature verifies correctly. The known-answer tests themselves are in + // ecsda/signing.rs. + #[test] ++#[cfg(feature = "alloc")] + fn signature_ecdsa_sign_asn1_test() { + let rng = rand::SystemRandom::new(); + +Index: ring/tests/ed25519_tests.rs +=================================================================== +--- ring.orig/tests/ed25519_tests.rs ++++ ring/tests/ed25519_tests.rs +@@ -19,7 +19,10 @@ use ring::{ + signature::{self, Ed25519KeyPair, KeyPair}, + }; + #[allow(deprecated)] +-use ring::{test, test_file}; ++use ring::test; ++ ++#[cfg(feature = "alloc")] ++use ring::test_file; + + #[cfg(all(target_arch = "wasm32", target_os = "unknown"))] + use wasm_bindgen_test::{wasm_bindgen_test as test, wasm_bindgen_test_configure}; +@@ -29,6 +32,7 @@ wasm_bindgen_test_configure!(run_in_brow + + /* /// Test vectors from BoringSSL. + #[test] ++#[cfg(feature = "alloc")] + fn test_signature_ed25519() { + test::run(test_file!("ed25519_tests.txt"), |section, test_case| { + assert_eq!(section, ""); +@@ -93,6 +97,7 @@ fn test_signature_ed25519_verify() { + ); + }*/ + ++#[cfg(feature = "alloc")] + fn test_signature_verification( + public_key: &[u8], + msg: &[u8], +@@ -136,6 +141,7 @@ fn test_ed25519_from_pkcs8_unchecked() { + } + + #[test] ++#[cfg(feature = "alloc")] + fn test_ed25519_from_pkcs8() { + test_ed25519_from_pkcs8_(FromPkcs8Variant::Checked, Ed25519KeyPair::from_pkcs8) + } +Index: ring/tests/hmac_tests.rs +=================================================================== +--- ring.orig/tests/hmac_tests.rs ++++ ring/tests/hmac_tests.rs +@@ -16,7 +16,10 @@ + + use ring::{digest, hmac}; + #[allow(deprecated)] +-use ring::{test, test_file}; ++use ring::test; ++ ++#[cfg(feature = "alloc")] ++use ring::test_file; + + #[cfg(all(target_arch = "wasm32", target_os = "unknown"))] + use wasm_bindgen_test::{wasm_bindgen_test as test, wasm_bindgen_test_configure}; +@@ -26,6 +29,7 @@ wasm_bindgen_test_configure!(run_in_brow + + /*#[test] + fn hmac_tests() { ++#[cfg(feature = "alloc")] + test::run(test_file!("hmac_tests.txt"), |section, test_case| { + assert_eq!(section, ""); + let digest_alg = test_case.consume_digest_alg("HMAC"); +Index: ring/tests/pbkdf2_tests.rs +=================================================================== +--- ring.orig/tests/pbkdf2_tests.rs ++++ ring/tests/pbkdf2_tests.rs +@@ -17,7 +17,10 @@ + use core::num::NonZeroU32; + use ring::{digest, error, pbkdf2}; + #[allow(deprecated)] +-use ring::{test, test_file}; ++use ring::test; ++ ++#[cfg(feature = "alloc")] ++use ring::test_file; + + #[cfg(all(target_arch = "wasm32", target_os = "unknown"))] + use wasm_bindgen_test::{wasm_bindgen_test as test, wasm_bindgen_test_configure}; +@@ -28,6 +31,7 @@ wasm_bindgen_test_configure!(run_in_brow + /* /// Test vectors from BoringSSL, Go, and other sources. + #[test] + pub fn pbkdf2_tests() { ++#[cfg(feature = "alloc")] + test::run(test_file!("pbkdf2_tests.txt"), |section, test_case| { + assert_eq!(section, ""); + let algorithm = { +Index: ring/tests/quic_tests.rs +=================================================================== +--- ring.orig/tests/quic_tests.rs ++++ ring/tests/quic_tests.rs +@@ -16,23 +16,30 @@ + + use ring::aead::quic; + #[allow(deprecated)] +-use ring::{test, test_file}; ++use ring::test; ++ ++#[cfg(feature = "alloc")] ++use ring::test_file; + + /* #[test] ++#[cfg(feature = "alloc")] + fn quic_aes_128() { + test_quic(&quic::AES_128, test_file!("quic_aes_128_tests.txt")); + } + + #[test] ++#[cfg(feature = "alloc")] + fn quic_aes_256() { + test_quic(&quic::AES_256, test_file!("quic_aes_256_tests.txt")); + } + + #[test] ++#[cfg(feature = "alloc")] + fn quic_chacha20() { + test_quic(&quic::CHACHA20, test_file!("quic_chacha20_tests.txt")); + }*/ + ++#[cfg(feature = "alloc")] + fn test_quic(alg: &'static quic::Algorithm, test_file: test::File) { + test_key_len(alg); + test_sample_len(alg); +Index: ring/src/lib.rs +=================================================================== +--- ring.orig/src/lib.rs ++++ ring/src/lib.rs +@@ -91,7 +91,7 @@ + )] + #![no_std] + +-#[cfg(feature = "alloc")] ++#[cfg(any(feature = "alloc",test))] + extern crate alloc; + + #[macro_use] +Index: ring/src/limb.rs +=================================================================== +--- ring.orig/src/limb.rs ++++ ring/src/limb.rs +@@ -393,6 +393,7 @@ mod tests { + } + + #[test] ++ #[cfg(feature = "alloc")] + fn test_limbs_are_even() { + static EVENS: &[&[LeakyLimb]] = &[ + &[], +@@ -463,6 +464,7 @@ mod tests { + } + + #[test] ++ #[cfg(feature = "alloc")] + fn test_limbs_equal_limb() { + // Equal + static EQUAL: &[&[LeakyLimb]] = &[&[1], &[1, 0], &[1, 0, 0], &[1, 0, 0, 0, 0, 0, 0]]; +@@ -636,6 +638,7 @@ mod tests { + } + + #[test] ++ #[cfg(feature = "alloc")] + fn test_limbs_minimal_bits() { + const ALL_ONES: LeakyLimb = LeakyLimb::MAX; + static CASES: &[(&[LeakyLimb], usize)] = &[ +Index: ring/src/testutil.rs +=================================================================== +--- ring.orig/src/testutil.rs ++++ ring/src/testutil.rs +@@ -537,6 +537,7 @@ pub mod rand { + } + + #[cfg(test)] ++#[cfg(feature = "alloc")] + mod tests { + use crate::error; + use crate::testutil as test; +Index: ring/tests/hkdf_tests.rs +=================================================================== +--- ring.orig/tests/hkdf_tests.rs ++++ ring/tests/hkdf_tests.rs +@@ -16,7 +16,10 @@ + + use ring::{digest, error, hkdf}; + #[allow(deprecated)] +-use ring::{test, test_file}; ++use ring::test; ++ ++#[cfg(feature = "alloc")] ++use ring::test_file; + + #[cfg(all(target_arch = "wasm32", target_os = "unknown"))] + use wasm_bindgen_test::{wasm_bindgen_test as test, wasm_bindgen_test_configure}; +@@ -25,6 +28,7 @@ use wasm_bindgen_test::{wasm_bindgen_tes + wasm_bindgen_test_configure!(run_in_browser); + + /* #[test] ++#[cfg(feature = "alloc")] + fn hkdf_tests() { + test::run(test_file!("hkdf_tests.txt"), |section, test_case| { + assert_eq!(section, ""); diff --git a/patches/no-js.patch b/patches/no-js.patch new file mode 100644 index 0000000..3bfd789 --- /dev/null +++ b/patches/no-js.patch @@ -0,0 +1,6 @@ +Index: ring/Cargo.toml +=================================================================== +--- ring.orig/Cargo.toml ++++ ring/Cargo.toml +@@ -220,1 +220,0 @@ +-wasm32_unknown_unknown_js = ["getrandom/js"] diff --git a/patches/no-wasm-bindgen-test.patch b/patches/no-wasm-bindgen-test.patch new file mode 100644 index 0000000..6e8fe72 --- /dev/null +++ b/patches/no-wasm-bindgen-test.patch @@ -0,0 +1,9 @@ +Index: ring/Cargo.toml +=================================================================== +--- ring.orig/Cargo.toml ++++ ring/Cargo.toml +@@ -86,4 +86,0 @@ +-[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dev-dependencies.wasm-bindgen-test] +-version = "0.3.37" +-features = ["std"] +-default-features = false diff --git a/patches/remove-windows.patch b/patches/remove-windows.patch new file mode 100644 index 0000000..f609f23 --- /dev/null +++ b/patches/remove-windows.patch @@ -0,0 +1,12 @@ +Index: ring/Cargo.toml +=================================================================== +--- ring.orig/Cargo.toml ++++ ring/Cargo.toml +@@ -216,7 +216,0 @@ unstable-testing-arm-no-hw = [] +-[target.'cfg(all(all(target_arch = "aarch64", target_endian = "little"), target_os = "windows"))'.dependencies.windows-sys] +-version = "0.52" +-features = [ +- "Win32_Foundation", +- "Win32_System_Threading", +-] +- diff --git a/patches/series b/patches/series new file mode 100644 index 0000000..e7db8c4 --- /dev/null +++ b/patches/series @@ -0,0 +1,8 @@ +built-using.patch +no-wasm-bindgen-test.patch +disable-slow-tests.patch +disable-tests-missing-testdata.patch +fix-tests-no-default-features.patch +remove-windows.patch +no-js.patch +disable-arm-specific-codepaths.patch diff --git a/rules b/rules new file mode 100755 index 0000000..044c1c2 --- /dev/null +++ b/rules @@ -0,0 +1,3 @@ +#!/usr/bin/make -f +%: + dh $@ --buildsystem cargo diff --git a/source/format b/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/tests/control b/tests/control new file mode 100644 index 0000000..2b432e4 --- /dev/null +++ b/tests/control @@ -0,0 +1,54 @@ +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets --all-features +Features: test-name=rust-ring:@ +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable + +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets --no-default-features --features alloc +Features: test-name=librust-ring-dev:alloc +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable + +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets +Features: test-name=librust-ring-dev:default +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable + +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets --no-default-features --features dev_urandom_fallback +Features: test-name=librust-ring-dev:dev_urandom_fallback +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable + +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets --no-default-features --features less-safe-getrandom-custom-or-rdrand +Features: test-name=librust-ring-dev:less-safe-getrandom-custom-or-rdrand +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable + +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets --no-default-features --features less-safe-getrandom-espidf +Features: test-name=librust-ring-dev:less-safe-getrandom-espidf +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable + +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets --no-default-features --features std +Features: test-name=librust-ring-dev:std +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable + +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets --no-default-features --features test_logging +Features: test-name=librust-ring-dev:test_logging +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable + +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets --no-default-features --features unstable-testing-arm-no-hw +Features: test-name=librust-ring-dev:unstable-testing-arm-no-hw +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable + +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets --no-default-features --features unstable-testing-arm-no-neon +Features: test-name=librust-ring-dev:unstable-testing-arm-no-neon +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable + +Test-Command: /usr/share/cargo/bin/cargo-auto-test ring 0.17.14 --all-targets --no-default-features +Features: test-name=librust-ring-dev: +Depends: dh-cargo (>= 31), rustc (>= 1.66.0), librust-libc-0.2-dev (>= 0.2.148-~~), @ +Restrictions: allow-stderr, skip-not-installable diff --git a/watch b/watch new file mode 100644 index 0000000..60f24dc --- /dev/null +++ b/watch @@ -0,0 +1,4 @@ +version=4 +opts=filenamemangle=s/.*\/(.*)\/download/ring-$1\.tar\.gz/g,\ +uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha)\.?\d*)$/$1~$2/ \ +https://qa.debian.org/cgi-bin/fakeupstream.cgi?upstream=crates.io/ring .*/crates/ring/@ANY_VERSION@/download